是否可以通过CLI向composer.json的config部分中的“allow-plugins”添加设置?

问题描述 投票:0回答:2

从composer 2.2开始,设置

allow-plugins
将是强制性的,我尝试通过CLI中的
composer config
命令推送此设置,但没有成功。

我尝试过一些命令,例如:

  • composer config --json '{"allow-plugins.composer/installers":true, "allow-plugins.dealerdirect/phpcodesniffer-composer-installer": true, "allow-plugins.roots/wordpress-core-installer": true }'

  • composer config config.allow-plugins '{"composer/installers":true, "dealerdirect/phpcodesniffer-composer-installer": true, "wordpress-core-installer": true}'

  • composer config --append "allow-plugins" "composer/installers":true, "dealerdirect/phpcodesniffer-composer-installer": true, "wordpress-core-installer": true

  • composer config --json "allow-plugins" '{"composer/installers":true, "dealerdirect/phpcodesniffer-composer-installer": true, "roots/wordpress-core-installer": true }'

我收到的只是错误消息,例如“..未定义”或者它是无效值。

我有的是这个:

​ "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist"
},​​​​​​

而且,我需要添加这样的设置:

​​​"config": {
    "optimize-autoloader": true,
    "preferred-install": "dist",
    "allow-plugins": {
        "composer/installers": true,
        "dealerdirect/phpcodesniffer-composer-installer": true,
        "roots/wordpress-core-installer": true
     }
},​​​​​

这可以通过 CLI 实现吗?

php composer-php command-line-interface
2个回答
17
投票

您需要一一通过设置。

composer config allow-plugins.composer/installers true
composer config allow-plugins.dealerdirect/phpcodesniffer-composer-installer  true
composer config allow-plugins.roots/wordpress-core-installer true

在评论中编辑每个对话:

OP 希望在命令期间不会出现提示。为此,我们必须传递

--no-interaction
(或
-n
)选项。这在执行自动化任务时非常有用。

OP 插件的完整示例:

composer config --no-interaction allow-plugins.composer/installerstrue
composer config --no-interaction allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
composer config --no-interaction allow-plugins.roots/wordpress-core-installer true

0
投票

将其添加到composer.json

"config": {
        "allow-plugins": true
   }
© www.soinside.com 2019 - 2024. All rights reserved.