【发布时间】:2017-05-27 03:34:34
【问题描述】:
我在 packagist.com 中创建了一个私人作曲家包,但是当我使用 作曲家需要命令来获取它。我的包位于根目录下的供应商文件夹下。
但我希望它位于 app/code 文件夹中。 composer.json 有没有可以设置app/code的参数,所以它会在app/code/下。
【问题讨论】:
标签: magento packagist composer-php
我在 packagist.com 中创建了一个私人作曲家包,但是当我使用 作曲家需要命令来获取它。我的包位于根目录下的供应商文件夹下。
但我希望它位于 app/code 文件夹中。 composer.json 有没有可以设置app/code的参数,所以它会在app/code/下。
【问题讨论】:
标签: magento packagist composer-php
是的,有。根据作曲家documentation 的说法,如果您的项目使用PSR-4 规范来加载类,那么将下面的sn-p 添加到composer.json 文件中就可以了。
注意:您需要将 ProjectNameSpace 更改为项目的基本命名空间。
...
"autoload": {
"psr-4": {
"ProjectNameSpace\\": "app/code"
}
},
...
【讨论】:
理论上。您不能作曲家总是将代码放在供应商目录中。代码是外部的,因此只能由作曲家更新。它不能在 app/code 中,因为只有您为项目修改的代码才应该在 app/code 中。
如果你想创建一个 Magento 项目,你应该在版本控制工具中有闲置文件。
其他文件将由作曲家处理。
但如果您确实需要这样做,但我认为没有任何理由这样做,那么您可以使用更新后和安装后脚本来移动代码。但这是一个非常糟糕的主意。
【讨论】: