使用composers资产安装程序路径不起作用



我正试图将composer中的某个包安装到某个路径中,包名为cyphix333/nbbc,通常会安装到vendor/cyphix333/nbbc中,但我想将其安装到vendor/nbbc中,所以我在主项目composer.json 中尝试了这一点

"require": {
    //......
    "cyphix333/nbbc": "dev-master"
},
"extra": {
    "asset-installer-paths": {
        //.....
        "cyphix333/nbbc": "vendor/nbbc"
    }
}

然而,它没有工作,它仍然安装在vendor/cyphix333/nbbc中。

编辑:。。。这是extra部分的完整数据,它来自我的php框架yii2:

"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",
        "cyphix333/nbbc": "vendor/nbbc"
    }
}

我在这里做错了什么?

1。asset-installer-paths=Composer插件fxp/composer-asset-plugin

asset-installer-paths指令属于Composer插件fxp/composer-asset-plugin。插件是必需的,此指令才能工作。但您在项目回购或全球范围内都不需要它。

Docu-安装

composer require "fxp/composer-asset-plugin:~1.0"

composer global require "fxp/composer-asset-plugin:~1.0"

2.cyphix333/nbbc是鲍尔资产还是NPM资产

没有。

3.我做错了什么

您认为,可以使用asset-installer-paths指令将包移动到特定的文件夹中。你不能。因为您的回购不是Bower或NPM资产。

4.如何将我的包裹从vendor/cyphix333/nbbc移动到vendor/nbbc

别再尝试了。这是浪费时间。为什么?Composer有一个Autoloader,他负责从类名到文件名的映射。请不要在意路径,只需定义一个自动加载策略(文件或类映射)并开始使用您的类。

如果你真的需要复制东西,你可以使用composer.json的scripts部分。https://getcomposer.org/doc/articles/scripts.md

相关内容

  • 没有找到相关文章

最新更新