无法通过作曲家安装扩展

Can't install extension through composer

如果我尝试从 PHPStorm 或命令行安装新扩展,我会收到此错误:

注意:我在 php 上禁用了 xdebug 扩展,但警告仍然显示应用程序。

C:\wamp\bin\php\php5.5.12\php.exe C:\wamp\www\calificaciones\composer.phar require 2amigos/yii2-date-picker-widget:1.0.5 -n --no-progress You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug The "fxp/composer-asset-plugin" plugin requires composer-plugin-api 1.0.0, this WILL break in the future and it should be fixed ASAP (require ^1.0 for example).

Fatal error: Call to undefined method Fxp\Composer\AssetPlugin\Package\Version\VersionParser::parseLinks() in C:\Users\David\AppData\Roaming\Composer\vendor\fxp\composer-asset-plugin\Repository\VcsPackageFilter.php on line 272

Call Stack: 0.0133 422128 1. {main}() C:\wamp\www\calificaciones\composer.phar:0 0.0136 424928 2. require('phar://C:/wamp/www/calificaciones/composer.phar/bin/composer') C:\wamp\www\calificaciones\composer.phar:25 0.1172 4937560 3. Composer\Console\Application->run() phar://C:/wamp/www/calificaciones/composer.phar/bin/composer:43 0.1246 5384936 4. Symfony\Component\Console\Application->run() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Console/Application.php:99 0.1275 5544264 5. Composer\Console\Application->doRun() phar://C:/wamp/www/calificaciones/composer.phar/vendor/symfony/console/Application.php:123 0.1341 5707456 6. Symfony\Component\Console\Application->doRun() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Console/Application.php:166 0.1347 5707904 7. Symfony\Component\Console\Application->doRunCommand() phar://C:/wamp/www/calificaciones/composer.phar/vendor/symfony/console/Application.php:192 0.1348 5708432 8. Symfony\Component\Console\Command\Command->run() phar://C:/wamp/www/calificaciones/composer.phar/vendor/symfony/console/Application.php:844 0.1386 5715824 9. Composer\Command\RequireCommand->execute() phar://C:/wamp/www/calificaciones/composer.phar/vendor/symfony/console/Command/Command.php:259 0.1430 5800904 10. Composer\Command\BaseCommand->getComposer() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Command/RequireCommand.php:97 0.1431 5801144 11. Composer\Console\Application->getComposer() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Command/BaseCommand.php:53 0.1431 5801224 12. Composer\Factory::create() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Console/Application.php:244 0.1431 5802304 13. Composer\Factory->createComposer() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Factory.php:532 0.4445 10944592 14. Composer\Plugin\PluginManager->loadInstalledPlugins() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Factory.php:354 0.4919 11465248 15. Composer\Plugin\PluginManager->loadRepository() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Plugin/PluginManager.php:79 0.4920 11465248 16. Composer\Plugin\PluginManager->registerPackage() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Plugin/PluginManager.php:240 0.4981 11556808 17. Composer\Plugin\PluginManager->addPlugin() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Plugin/PluginManager.php:188 0.4982 11557160 18. Fxp\Composer\AssetPlugin\FxpAssetPlugin->activate() phar://C:/wamp/www/calificaciones/composer.phar/src/Composer/Plugin/PluginManager.php:215 0.4996 11626888 19. Fxp\Composer\AssetPlugin\Repository\VcsPackageFilter->__construct() C:\Users\David\AppData\Roaming\Composer\vendor\fxp\composer-asset-plugin\FxpAssetPlugin.php:90 0.5007 11636056 20. Fxp\Composer\AssetPlugin\Repository\VcsPackageFilter->initialize() C:\Users\David\AppData\Roaming\Composer\vendor\fxp\composer-asset-plugin\Repository\VcsPackageFilter.php:77 0.5016 11659224 21. Fxp\Composer\AssetPlugin\Repository\VcsPackageFilter->initInstalledPackages() C:\Users\David\AppData\Roaming\Composer\vendor\fxp\composer-asset-plugin\Repository\VcsPackageFilter.php:259

出了什么问题?

  • 为此卸载 Xdebug 和所有配置。
  • 删除您 composer.json 中的所有供应商,而没有为您的框架严格打包。
  • 清除框架缓存。
  • 更新您的 composer.lock.
  • 您也可以重新安装您的基本包框架(升级或降级版本,然后根据需要重新插入包)。

Fatal error: Call to undefined method Fxp\Composer\AssetPlugin\Package\Version\VersionParser::parseLinks()

这表明"fxp/composer-asset-plugin"插件有问题。

in C:\Users\David\AppData\Roaming\Composer\vendor\fxp\composer-asset-plugin\Repository\VcsPackageFilter.php on line 272

由于路径以 C:\Users\David\AppData\Roaming 开头,这意味着您已全局安装该插件。

你可以用这个方法更新这个插件shared by the maintainer of this plugin:

Update the composer and global dependencies without plugin option:

$ composer selfupdate
$ composer global update --no-plugins

If you still have an error is that the plugin is not the last vresion:

$ composer global require fxp/composer-asset-plugin:"^1.1.0" --no-plugins