我相信我已准备好4.1的所有依赖项,但在使用composer update时出现以下错误:
生成自动加载文件
脚本php artisan clear-compiled处理返回的post-update-cmd事件,错误:
脚本php artisan优化处理返回的post-update-cmd事件,错误:
我的作曲家文件如下:
{
"require": {
"laravel/framework": "4.1.*",
"jasonlewis/basset": "dev-master",
"twbs/bootstrap": "dev-master",
"frozennode/administrator": "dev-master",
"bllim/datatables": "*",
"scubaclick/mandrill": "dev-develop"
},
"require-dev": {
"codeception/codeception": "1.8.*",
"way/generators": "dev-master"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
"app/Acme/Apis/v1"
],
"psr-0": {
"Acme" : "app/"
}
},
"scripts": {
"post-install-cmd": [
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "dev"
}
答案 0 :(得分:1)
如果您没有正确路由到作曲家目录中 autoload_classmap.php 文件中的任何类文件,您将会遇到此类错误仍在使用该文件。
这可以通过在使用新文件之前执行 php artisan dump-autoload 文件来解决。
如果您已经在使用该文件,请注释该部分,运行php artisan dump-autoload,然后取消注释之前评论过的那些行。
答案 1 :(得分:1)
您需要执行composer update --no-scripts
来更新所有作曲家文件,而无需运行artisan命令;原因是,直到作曲家完成工匠才会被升级打破,默认的composer.json文件将命令php artisan clear-compiled
设置为在更新供应商文件夹之前运行。
如果所有其他方法都失败,请删除您的供应商目录和composer.lock文件,然后运行composer install
答案 2 :(得分:0)
当升级过程要求我将该帖子编译出来时,运行它,然后再做一次。我终于让它工作了,但它并不顺利。