直到最近,当我运行sudo composer self-update
时,我的项目一直运作良好。 Composer已成功更新,但我无法再迁移(php artisan migrate
)。这是我得到的错误:
PHP Fatal error: Class 'Patchwork\Utf8\Bootup' not found in /Applications/MAMP/htdocs/ThumbsUp/bootstrap/autoload.php on line 46
我已经运行composer update
和composer install
,但此错误仍然存在。为什么不能在self-update
之后找到这个课程?
答案 0 :(得分:9)
我在尝试运行作曲家更新时遇到了类似的问题,但上述解决方案都没有奏效。事实证明我的composer.json中有2个需要的部分,这实际上是错误的。
"require": {
"laravel/framework": "4.1.*"
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable",
"require": {
"barryvdh/laravel-ide-helper": "1.*",
"zizaco/confide": "3.2.x",
"laravelbook/ardent": "dev-master",
"zizaco/entrust": "dev-master"
},
"require-dev": {
"way/generators": "2.*",
"fzaninotto/faker": "1.3.*@dev"
}
将两者结合起来解决了我的问题。
"require": {
"laravel/framework": "4.1.*",
"barryvdh/laravel-ide-helper": "1.*",
"zizaco/confide": "3.2.x",
"laravelbook/ardent": "dev-master",
"zizaco/entrust": "dev-master"
},
如果仍有问题,请尝试删除composer.lock和vendor目录并运行
mv ~/.composer/cache ~/.composer/cache.bak
清除作曲家缓存并最终运行
sudo composer install
这应该可以解决问题。
答案 1 :(得分:8)
在追踪这个问题时,我发现它与我的composer.json中有关:
"pre-update-cmd": [
"php artisan clear-compiled"
],
我的理论是"清晰编译"无法工作,因为作曲家还没有更新。删除此内容,然后调用composer update
,然后重新添加它就解决了我的问题。
答案 2 :(得分:5)
我遇到了同样的问题,我根据您的配置运行了composer dump-autoload
或php composer.phar dump-autoload
,再次运行了作曲家更新并且运行正常。
答案 3 :(得分:0)
我刚删除了composer.lock文件,然后运行composer update
它起作用了。