簡體   English   中英

"致命錯誤 Laravel:當我查看我的網站時未捕獲 ReflectionException"

[英]Fatal Error Laravel: Uncaught ReflectionException when i view my Site

查看我的網站時出現以下錯誤。

我的錯誤:<\/strong>

致命錯誤:未捕獲的 ReflectionException:類日志在 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php:741 中不存在> 堆棧跟蹤:#0 \/home\/vagrant\/Code \/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(741): ReflectionClass->__construct('log') #1 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/ Illuminate\/Container\/Container.php(631): Illuminate\\Container\\Container->build('log', Array) #2 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application .php(674): Illuminate\\Container\\Container->make('log', Array) #3 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(842) : Illuminate\\Foundation\\Application->make('log') #4 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(805): Illuminate\\Container\\Container- >resolveClass(Object(ReflectionParameter)) > #5 \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Ill uminate\/Container\/Container.php(774): Il in \/home\/vagrant\/Code\/in10km\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php 在第 741 行

我的Composer.json<\/strong>文件是這樣的

任何人都可以幫助我如何擺脫此錯誤並成功查看我的網站。

"

刪除bootstrap/cache/所有文件,然后運行:

composer dump-autoload -o

我找到了解決方案,在我的路線中,我沒有准確地調用控制器的名稱

示例:

Route::get('/endpoint', 'Namebadcontroller@function');

// Correct name of route
Route::get('/endpoint', 'NameBadController@function');

並運行以下命令:

作曲家轉儲自動加載 -o

php artisan 清晰編譯 php artisan 優化

我有一個類似的問題。 我發現,要真正挖掘下到這個問題,你需要修改的照射/集裝箱/ Container.php文件,如建議在這里從頂部第三。

<?php

namespace {
    use Monolog\Logger as Monolog;
    class log extends Illuminate\Log\Writer {
        function __construct()
        {
            $this->monolog = new Monolog("local");
        }
    }
}

namespace Illuminate\Container {

    use Closure;
    use ArrayAccess;
    use ReflectionClass;
    use ReflectionMethod;
    use ReflectionFunction;
    use ReflectionParameter;
    use InvalidArgumentException;
    use Illuminate\Contracts\Container\Container as ContainerContract;
    use Illuminate\Contracts\Container\BindingResolutionException as BindingResolutionContractException;


    class Container implements ArrayAccess, ContainerContract
    {

按照代碼建議修改它,並在底部添加一個額外的右括號。 這將允許它顯示否則無法顯示的錯誤,從而能夠解決您的問題!

刪除供應商文件,然后運行composer update

問題可能源於尚未(尚未)下載到您的供應商文件夾(包含所有已安裝的供應商包)中的包在這種情況下, composer dump-autoload -o<\/code>無法解決您的問題。

檢查你composer.json<\/code>和composer.lock<\/code> 。

我從 GIT 存儲庫將 main 添加到我的分支中。

composer.json<\/code>和composer.lock<\/code>不匹配!

解決方案是從 main 中恢復composer.json<\/code>和composer.lock<\/code>並手動從我的分支中讀取所有更改。

只是為了確保我還刪除了我的vendor<\/code>文件夾。

運行composer install<\/code> (重新)安裝了存儲在 composer.lock 中的所有包,並添加了所有尚未安裝的(較新的)包。

請注意,運行composer update<\/code>可能會解決問題,但也會更新可能未更新的軟件包。

嘗試命令composer dump-autoload -o

我用它來克服這個問題:'Uncaught ReflectionException'。

祝你好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM