我想将供应商目录放在../vendor
文件夹中,而不是放在主项目目录中的供应商文件夹中。
这可以在作曲家中得到支持,因此反映了我的composer.json
:
"config": {
"preferred-install": "dist",
"vendor-dir": "vendor"
},
我还编辑了我的autoload.php
文件
require __DIR__.'/../../vendor/autoload.php'
但每次我运行composer install时,我都会得到:
脚本php artisan优化处理返回的带有错误的post-install-cmd事件。
我甚至不能做任何php工匠命令 - 它们都是空的,甚至不是错误信息。 当我在普通配置选项的普通位置使用供应商文件夹时,一切都运行得很好。那么L4.1不支持更改供应商目录吗?
答案 0 :(得分:2)
编辑composer.json
"config": {
"preferred-install": "dist",
"vendor-dir": "../vendor"
},
编辑bootstrap / autoload.php文件
require __DIR__.'/../../vendor/autoload.php'
编辑bootstrap / start.php文件
$framework = $app['path.base'].
'/../vendor/laravel/framework/src';
编辑../ vendor / laravel / framework / src / Illuminate / Foundation / Console / Optimize / config.php
$basePath = $app['path.base'].'/../';
然后运行composer install,你会发现vendor dir创建了../
php artisan optimize -v --force
Generating optimized class loader
Compiling common classes
答案 1 :(得分:1)
好的,终于明白了。
除了编辑composer.json和bootstrap / autoload.php之外,还必须编辑bootstrap / start.php
//to this
$framework = $app['path.base'].'/../vendor/laravel/framework/src';
//from this was before
$framework = $app['path.base'].'/vendor/laravel/framework/src';