i changed the name from the github download zip to just Embed from Embed-master and it's in /libaries/Embed. Tried to enable module but i get the error "URL Embed requires the Embed/Embed library." What am i doing wrong here? anyone know?

thanks.

Comments

dwaynegarden created an issue. See original summary.

marcoscano’s picture

Issue tags: +D8Media

You are strongly encouraged to install the library using composer. Just run composer require embed/embed and you should be done (the library should live then in your /vendor directory, not libraries).

TiMESPLiNTER’s picture

I was also a bit irritated because of the wording "library". Actually it's a composer package. Maybe we should change the error message to state clearly that it is a PHP dependency and not a "library"?

rnexussix’s picture

Same problem here when trying to activate URL Embed, I am getting this message:
"URL Embed requires the Embed/Embed library."

Drupal 8.3.5
PHP 5.5.9
nginx 1.4.6

What do I do ?

Desaya’s picture

I'm getting the same error with the missing library.

I have Entity Embed installed and running, but the URL Embed wont install.

Drupal 8.3.6
PHP 5.6.31

Any suggestions?

Dra-SiAn’s picture

Tried to install this "embed library" using composer and absolutely nothing happened. Still showing message "url Embed requires the Embed/Embed library". Where to put this thing?

Anonymous’s picture

I have exactly the same issue as Dra-SiAn.

sealionking’s picture

THE SAME PROBLEM

gge’s picture

For those having problems with the embed library, please read this:

1. If you downloaded the URL Embed module using your administration interface (/admin/modules):
The URL Embed module contains a file named composer.json. Inside this file it's specified the embed library version required by the URL Embed module. At this moment the minimum accepted version is 2.2 ("require": { "embed/embed": "~2.2"} = ~2.2 is equivalent to >=2.2 <3.0.0).

If you guys just run the command composer require embed/embed, composer will install the latest version of embed library (3.3.0) which is not compatible with URL Embed. So you must run composer require embed/embed:~2.2.

Remember to run composer require embed/embed:~2.2 when you are inside the root of your Drupal installation folder (usually public_html/www). After that command runs successfully you check if the library was installed by going to drupal installation folder and check the vendor folder. Inside this folder you should now see a folder named embed. Now you can go to /admin/modules and install URL Embed module.

2. The new, recommended way to install Drupal modules is to use composer directly, without using Drupal's admin interface.
That means if you want to install URL Embed go to your drupal installation folder and just run composer require 'drupal/url_embed:^1.0'. This command will take care of the embed library and will download the right version in your vendor folder and at the same time will also download the URL Embed in your modules folder. After that just go to yourdomain.com/admin/modules and install the URL Embed module.

Ayran’s picture

Hi, running "php composer.phar require embed/embed:~2.2" gives out of memory message. Same for "require embed/embed" and almost anything else. My memory limit is 200MB. I have tried with php -d memory_limit=-1, but no - still out of memory. The "composer require 'drupal/url_embed:^1.0'" says there is no such thing.

I have really given this a try. I give up. I also think that D8 goes into a very nasty corporate direction.

Well done.

Ayran’s picture

I decided to try again. So more news from the battlefront. After increasing the system memory on the SSH, helpfully done by my shared hosting sysadmins, I ran the php composer.phar require embed/embed:~2.2 it installed ok:

/composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Installing embed/embed (v2.7.7): Loading from cache
embed/embed suggests installing guzzlehttp/guzzle@5.x (To use Guzzle5 request resolver)
Writing lock file
Generating autoload files

So far so good. BUT now I have an error on the whole site:

Fatal error: Class 'Drupal\Core\DrupalKernel' not found in {site}/index.php on line 16

I do not know how to proceed to fix this, so maybe I'll just go back to the previous backup and revert the changes.

So this is a warning to all ppl who lack the dev ninja skills - consider carefully if you really want this functionality in your site. Or if you want to use D8 at all, really.

Maglor’s picture

Version: 8.x-1.0-alpha1 » 3.x-dev

For all those not getting this URL Embed working: Drupal module CkEditor 5 Media Embed (still in beta) does the trick, with just 1 module! No dependencies, complicated installs or other shenanigans, just right out of the box a ckeditor button that lets you insert youtube, Spotify etc. links and it gives you a responsive media!
Can be found here: https://www.drupal.org/project/ckeditor5_media_embed
It uses the CkEditor package described (and demo'd) here: https://ckeditor.com/docs/ckeditor5/latest/features/media-embed.html

mark_fullmer’s picture

Thanks for referencing https://www.drupal.org/project/ckeditor5_media_embed , which uses CKEditor 5's built-in media plugin.

I think the main difference to note for people coming here is that the above does not support all oEmbed endpoints. There are other considerations, as well:
- Controlling which endpoints are available can be done with url_embed in conjunction with https://www.drupal.org/project/oembed_providers
- This module (url_embed) also provides a Link field formatter

But if a site just needs the ability to embed YouTube and Vimeo videos through the WYSIWYG, https://www.drupal.org/project/ckeditor5_media_embed is a great solution!