Composer为何忽略composer.json中的installer-paths配置?
Composer为何忽略composer.json中的installer-paths配置?
嘿,我来帮你搞定这个问题!你碰到的情况其实挺典型的——installer-paths这个配置并不是Composer原生就支持的功能,它得依赖composer/installers这个第三方插件才能生效,这就是为什么你的配置被忽略啦。
你现在的composer.json里只定义了extra字段下的路径规则,但没在require里引入对应的插件,Composer根本不知道该怎么解析这个自定义安装路径的规则,自然还是乖乖走默认的./vendor目录。
给你两个快速解决的步骤:
- 先把
composer/installers添加到你的依赖列表里,修改后的require部分应该是这样的:
"require": { "monolog/monolog": "*", "composer/installers": "^2.0" }
- 重新执行
composer install或者composer update命令,这时候Composer就会识别到你的installer-paths配置,把monolog妥妥安装到./3rdparty目录里了。
要是嫌手动改json麻烦,也可以直接在命令行跑这句:composer require composer/installers,它会自动帮你更新composer.json并安装插件,一步到位。
另外再确认下,你现有的installer-paths格式是没问题的,只要插件装好了,这条规则就能正常工作啦。
备注:内容来源于stack exchange,提问作者Frank van Wensveen
相关产品推荐
相关产品推荐

