我使用 Git 创建了一个新分支,对我的代码应用了一些更新,在我的暂存服务器上检查了该分支,现在我无法运行任何与作曲家相关的内容。
我已经向 composer.json 添加了一些适用于我的开发环境的新包,但是一旦我尝试在暂存环境中composer update
,我就会发现与尚未下载的类相关的类未找到错误。
我试过了
composer update
composer dump-autoload
php artisan clear-compiled
php artisan dump-autoload
php artisan optimize
但都会导致以下错误
PHP Fatal error: Class 'ArtdarekOAuthOAuthServiceProvider' not found in
/var/www/sites/x/bootstrap/compiled.php on line 4321
Script php artisan clear-compiled handling the
pre-update-cmd event returned with an error
[RuntimeException]
Error Output: PHP Fatal error: Class 'ArtdarekOAuthOAuthServiceProvider'
not found in /var/www/sites/x/bootstrap/compiled.php
on line 4321
我还可以尝试什么才能让作曲家下载新文件?
php artisan optimize --force
该命令将重新生成/bootstrap/compiled.php
当环境处于调试模式时,需要 --force
arg 来重新生成文件。
我相信有一种更优雅的方法来解决这个问题(请接受任何提供答案的答案),但这可以通过删除整个供应商目录并再次运行作曲家安装来解决。
我知道它不漂亮,但有时它更容易和更快。
我遇到了完全相同的问题,我通过 filezilla 再次将项目上传到我的服务器来解决。
但是,这并不能解决您在作曲家方面遇到的问题。这就引出了一个问题:假设您正在使用专用服务器,您是否在服务器中全局安装了作曲家?如果没有,你仍然应该能够进行php composer.phar更新或只创建一个别名。
我可能误解了你的问题,我知道你的问题是在不久前提出的,但希望这对其他人有所帮助。