Зависимость от композитора недоступна для PHPDOX
Я пытаюсь установить phpdox через композитор.
"require": {
"phploc/phploc": "2.0.6",
"phpunit/phpunit": "4.2.4",
"pdepend/pdepend": "2.0.0",
"phpmd/phpmd": "2.0.0",
"squizlabs/php_codesniffer": "2.0.0a2",
"sebastian/phpcpd": "2.0.*@dev",
"theseer/phpdox": "0.6.6.1"
}
Который производит следующее:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
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
- Installation request for theseer/phpdox 0.6.6.1 -> satisfiable by theseer/phpdox[0.6.6.1].
- theseer/phpdox 0.6.6.1 requires nikic/php-parser >=1.0.0 -> no matching package found.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
Тем не менее, на веб-сайте Packagist говорится, что phpdox имеет зависимость nikic/php-parser: >=1.0.0
который не существует.
Как мне решить это?
1 ответ
Посылка nikic/php-parser
был помечен как бета-версия 1.0, а не как стабильный выпуск.
theseer/phpdox
требует версии 1.0.0, однако она minimum-stability:dev
а также prefer-stable:true
в своем собственном composer.json
, Эти настройки можно определить только в корне composer.json
,
Два способа это исправить:
- Требуйте необходимую бета-версию этого пакета самостоятельно:
composer require nikic/php-parser:~1.0@beta
сделал бы это. - Также установите минимальную стабильность в настройках по меньшей мере "бета" и добавьте флаг предпочитаемую стабильность, чтобы избежать попадания ВСЕ пакетов в бета-стабильность.
Читая инструкции по установке, я понял, что вам не требуется этот инструмент напрямую через Composer. Я не вижу причины, почему бы не сделать это, но это, вероятно, не ожидалось. Поэтому необязательный шаг 3: Откройте тикет на Github, чтобы исправить эту проблему.