2016-02-11 2 views
-2

Я хочу использовать: https://github.com/mikealmond/MusicBrainz Скопировано в папку myapp-> vendor. Установлен Guzzle с композитором и обновленным композитором.composer.json/cakephp

use GuzzleHttp\Client; 
use MusicBrainz\Filters\ArtistFilter; 
use MusicBrainz\Filters\RecordingFilter; 
use MusicBrainz\HttpAdapters\GuzzleHttpAdapter; 
use MusicBrainz\MusicBrainz; 

require __DIR__ . '/vendor/autoload.php'; 

Автозагрузка не работает. Я много пробовал и не знаю, что писать в композиторе.json.

Error: Class 'MusicBrainz\MusicBrainz' not found 

Когда я называю:

$brainz = new MusicBrainz(new GuzzleHttpAdapter(new Client())); 

Я пытался в composer.json

"require-dev": { 
    "vendor/MusicBrainz": "dev-master" 
    }, 
    "repositories": [ 
     { 
      "type": "vcs", 
      "url": "https://github.com/mikealmond/MusicBrainz.git" 
     } 
    ], 

Затем обновление композитор ... И я получаю:

Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - The requested package src/musicbrainz could not be found in any version, there may be a typo in the package name. 

Potential causes: 
- A typo in the package name 
- The package is not available in a stable-enough version according to your minimum-stability setting 
    see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details. 

Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems. 
+0

Какую версию CakePHP вы используете? Почему бы не установить MusicBrainz с Composer, если вы уже используете его для Guzzle? – drmonkeyninja

+0

CAKE_VERSION 3.2.1 // Я пытался использовать Composer, но он не работает, и я не вижу ошибки –

+1

«* он не работает *« Когда люди узнают, что это ** не ** квалифицированный отчет о проблеме? Пожалуйста, прочитайте * целую страницу: http://www.catb.org/esr/faqs/smart-questions.html – burzum

ответ

2

Go на страницу связанного репозитория на Github. В корневой папке щелкните файл с именем composer.json. Найдите строку с "name". Текст справа от него - это имя этого пакета, который вы должны использовать в Composer.

В качестве альтернативы перейдите к https://packagist.org и введите что-то близкое к фактическому имени в поле поиска, например musicb. Что-то найдется: https://packagist.org/search/?q=musicb

В любом случае вы найдете название пакета: mikealmond/musicbrainz.

Теперь перейдите в командную строку и введите: composer require mikealmond/musicbrainz. Композитор сделает все остальное, включая загрузку Guzzle, потому что это объявлено как зависимость.

После этого шага демонстрационный код будет работать - или, по крайней мере, не сработает из-за отсутствия классов.