web-dev-qa-db-ja.com

更新composerが例外をスローしますクラスFxp \ Composer \ AssetPlugin \ Repository \ NpmRepositoryが存在しません

最近、composer Yii2基本アプリケーションテンプレートのインストールを実行しました。

しかしphp composer.phar installはこの例外をスローします:

クラスFxp\Composer\AssetPlugin\Repository\NpmRepositoryが存在しません

「yiisoft/yii2-composer」プラグインにはcomposer-plugin-api 1.0.0が必要です。これはWIL L将来的に機能しなくなり、できるだけ早く修正する必要があります(たとえば、^ 1.0が必要です)。

[ReflectionException]クラスFxp\Composer\AssetPlugin\Repository\NpmRepositoryが存在しません

[エラー例外]

Fxp\Composer\AssetPlugin\Repository\AbstractAssetsRepository :: w hatProvides()の宣言は、Composer\Repository\ComposerRepository :: whatProvides(Composer\DependencyResolver\Pool $ pool、$ name、$ bypassFilters = fal se)と互換性がある必要があります

これが私のcomposer.jsonです:

{
    "name": "yiisoft/yii2-app-basic",
    "description": "Yii 2 Basic Project Template",
    "keywords": ["yii2", "framework", "basic", "project template"],
    "homepage": "http://www.yiiframework.com/",
    "type": "project",
    "license": "BSD-3-Clause",
    "support": {
        "issues": "https://github.com/yiisoft/yii2/issues?state=open",
        "forum": "http://www.yiiframework.com/forum/",
        "wiki": "http://www.yiiframework.com/wiki/",
        "irc": "irc://irc.freenode.net/yii",
        "source": "https://github.com/yiisoft/yii2"
    },
    "minimum-stability": "stable",
    "require": {
        "php": ">=5.4.0",
        "yiisoft/yii2": ">=2.0.5",
        "yiisoft/yii2-bootstrap": "*",
        "yiisoft/yii2-swiftmailer": "*"

    },
    "require-dev": {
        "yiisoft/yii2-codeception": "*",
        "yiisoft/yii2-debug": "*",
        "yiisoft/yii2-gii": "*",
        "yiisoft/yii2-faker": "*"
    },
    "config": {
        "process-timeout": 1800
    },
    "scripts": {
        "post-create-project-cmd": [
            "yii\\composer\\Installer::postCreateProject"
        ]
    },
    "extra": {
        "yii\\composer\\Installer::postCreateProject": {
            "setPermission": [
                {
                    "runtime": "0777",
                    "web/assets": "0777",
                    "yii": "0755"
                }
            ],
            "generateCookieValidationKey": [
                "config/web.php"
            ]
        },
        "asset-installer-paths": {
            "npm-asset-library": "vendor/npm",
            "bower-asset-library": "vendor/bower"
        }
    }
}

何が悪かったのでしょうか?これを経験している人はいますか?

13
Ramesh Pareek

エラーメッセージのように言う:

The "yiisoft/yii2-composer" 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).

fxp/composer-asset-pluginを更新してみてください:

php composer.phar global update fxp/composer-asset-plugin --no-plugins

PS:更新後も機能しない場合は、以下も試してください:

composer global require fxp/composer-asset-plugin --no-plugins

53
Bfcm