【发布时间】:2016-04-30 22:47:11
【问题描述】:
我目前正在尝试从 github 克隆我的现有项目。克隆后我运行composer install 在此过程中收到以下错误:
Uncaught ReflectionException: Class log does not exist
我在 Centos 7 上运行 Laravel 5.2。
我看过以下参考:
- 删除
.env文件中的空格。 - 删除供应商目录并重新安装
- 删除 composer.json 中所需的某些包
我有:
- 将我的
.env替换为example.env以避免任何自定义配置错误。 - 我已删除并重新克隆了 repo。
- 我使用了 Laravel 附带的默认
composer.json来看看这是否有区别。
以上都没有给我带来任何快乐。我还在另一台机器上设置了相同的环境,应用程序运行良好。这里唯一的区别是机器(工作)不是从 git 克隆的——它是最初的构建环境。
我收到的堆栈跟踪:
PHP Fatal error: Uncaught ReflectionException: Class log does not exist in /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php:736
Stack trace:
#0 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php(736): ReflectionClass->__construct('log')
#1 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php(631): Illuminate\Container\Container->build('log', Array)
#2 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(674): Illuminate\Container\Container->make('log', Array)
#3 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php(845): Illuminate\Foundation\Application->make('log')
#4 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php(800): Illuminate\Container\Container->resolveClass(Object(ReflectionParameter))
#5 /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php(769): Illuminate\Container\Container->getDependenc in /var/www/html/Acme/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 736
任何帮助将不胜感激。提前致谢。
【问题讨论】:
-
我也会关注这个答案,因为我也遇到过类似的问题。我在 laravel 5.1.28 上,最近在一段时间内第一次做了作曲家更新,从那以后我在 heroku 上构建到生产时遇到了这个错误。我已经回滚了我所做的 composer.json 更改,但怀疑没有更改;这与拉入供应商的所有更新有关:(
-
@DianeKaplan 我已经为您发布了一个答案,让您大开眼界。它帮助我找到了我的错误...
-
谢谢,@jakehallas!我正在使用 postgres-您是否碰巧知道我是否需要类似的扩展,或者它是否足够具体以至于我的问题可能是其他问题?我是个新手,所以像这样的问题超出了我的舒适区:/
-
然后重启你的 http 服务器。
-
对我来说,这通常发生在我忘记添加“使用日志;”时在包含所需文件的文件顶部..并在内部方法中使用。
标签: php laravel centos7 laravel-5.2