【问题标题】:Laravel 5.6: Uncaught ReflectionException: Class env does not existLaravel 5.6:未捕获的 ReflectionException:类 env 不存在
【发布时间】:2021-09-27 02:15:17
【问题描述】:

在其生产服务器上运行我的Laravel 5.6 应用程序时,在尝试运行工匠命令时,我在浏览器和控制台中都收到如下错误:

PHP Fatal error:  Uncaught ReflectionException: Class env does not exist in /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php:767
Stack trace:
#0 /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php(767): ReflectionClass->__construct('env')
#1 /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php(646): Illuminate\Container\Container->build('env')
#2 /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php(601): Illuminate\Container\Container->resolve('env', Array)
#3 /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(734): Illuminate\Container\Container->make('env', Array)
#4 /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php(1210): Illuminate\Foundation\Application->m in /var/www/html/service.straightlinefernie.com/dev/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 767

该应用在我的开发环境中运行良好。我梳理了我的 .envconfig/ 文件中的错误,一切看起来都不错。

我猜我的服务器设置中缺少一些东西,但是 我看到的主要问题是此错误消息过于笼统,并且没有提供发现实际导致启动过程失败的特定文件或错误所需的信息。

堆栈跟踪甚至没有保存在日志文件中,当我尝试运行 artisan 命令时,它只出现在 console 中。

有谁知道如何获得更详细的错误消息,实际上可以帮助我解决这个错误?

也许有一种方法可以编辑文件Illuminate/Container/Container.php 以便为我提供更多信息?

谢谢

【问题讨论】:

  • 对于仍有问题的人,可以在 phpunit.xml 中添加 来解决。
  • 你试过composer dump-autoload -o php artisan config:clear
  • 我在 phpunit.xml 中尝试过<env name="TELESCOPE_ENABLED" value="false"/>,但没有成功。 composer dunp-autoload -o 在自动加载后转储脚本运行时也会失败并出现相同的错误。
  • 一个月过去了,还是没能解决这个问题!
  • @farooq 我没有 TELESCOPE_ENABLED 也没有 phpunit.xml 文件,我在哪里可以找到它?

标签: php laravel reflection laravel-5.6


【解决方案1】:

如果 composer dump-autoload -ophp artisan config:clear 不起作用,请检查您的 .env 是否存在类似这样的潜在错误:

KEY=THE VALUE

应该是

KEY="THE VALUE"

【讨论】:

  • .env 中的错误不是我的问题,但我会接受这个答案,因为我相信它会对其他人有所帮助。我能够克服我的特定错误的唯一方法是 rm -rf 整个项目目录并在干净的环境中重新部署应用程序。我仍然很想知道当 Laravel 在启动过程中失败时是否有任何方法可以获得更有用的错误消息。
【解决方案2】:

我遇到了这个问题,在配置文件夹>常量文件中发现问题我在配置文件中写了“asset('/')”和“url()”函数,我们不能在配置中编写这样的函数。

希望这个答案能让一些像这个错误一样卡住的人。

【讨论】:

    猜你喜欢
    • 2018-09-02
    • 2021-12-10
    • 2016-04-30
    • 2018-09-27
    • 2018-01-03
    • 1970-01-01
    • 2017-09-11
    • 2018-05-16
    • 2020-01-03
    相关资源
    最近更新 更多