簡體   English   中英

為什么作曲家更新會導致laravel應用在重定向時失敗

[英]why composer update causes laravel app to fail on redirects

我有一個已經開發了幾個月的laravel應用程序(5.5版)。 在最長的時間內,我可以在composer.json文件中添加新的庫並運行“ composer update”,這樣它將構建一個新的composer.lock文件,並且一切正常。 但是現在,無論何時我運行composer update並重新啟動laravel應用程序時,如果我做任何會導致站點嘗試“重定向”(例如登錄或注銷)的操作,都會產生以下錯誤:

類型錯誤:傳遞給Laravel \\ Lumen \\ Http \\ Redirector :: __ construct()的參數1必須是Laravel \\ Lumen \\ Application的實例,Illuminate \\ Foundation \\ Application的實例已在其中調用...(取決於我在哪里進行重定向)

因此,我確定這一定是由於某些軟件包未正確更新引起的。 因此,如果我只是刪除整個.. \\ vendor文件夾,然后運行composer install,它將解決此問題。 網站可以正常運行幾個月,然后如果我再次運行composer update,該錯誤就會再次出現。 因此,我知道這是由所包含的軟件包之一引起的。 有誰知道該怎么辦才能找出導致此錯誤的原因,原因或原因?

如果您需要它,這里是composer.json文件的副本:

{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
    "php": ">=5.6.4",
    "anhskohbo/no-captcha": "^2.3",
    "askedio/laravel5-soft-cascade": "^5.5",
    "aws/aws-sdk-php": "^3.25",
    "aws/aws-sdk-php-laravel": "^3.1",
    "doctrine/dbal": "^2.5",
    "intervention/image": "^2.3",
    "laravel/framework": "5.5.*",
    "laravel/socialite": "^3.0",
    "laravel/tinker": "~1.0",
    "laravolt/avatar": "^1.8",
    "league/flysystem-aws-s3-v3": "^1.0",
    "pbmedia/laravel-ffmpeg": "^1.1",
    "php-ffmpeg/php-ffmpeg": "^0.9.5",
    "sammyk/laravel-facebook-sdk": "^3.5",
    "braintree/braintree_php" : "3.27.0"
},
"require-dev": {
    "fzaninotto/faker": "~1.4",
    "mockery/mockery": "0.9.*",
    "phpunit/phpunit": "~6.0",
    "filp/whoops": "~2.0"
},
"autoload": {
    "classmap": [
        "database"
    ],
    "psr-4": {
        "App\\": "app/"
    },
    "files": [
        "app/Http/helpers.php"
    ]
},
"autoload-dev": {
    "psr-4": {
        "Tests\\": "tests/"
    }
},
"scripts": {
    "post-root-package-install": [
        "php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ],
    "post-install-cmd": [
        "Illuminate\\Foundation\\ComposerScripts::postInstall",
        "php artisan optimize"
    ],
    "post-update-cmd": [
        "Illuminate\\Foundation\\ComposerScripts::postUpdate",
        "php artisan optimize"
    ],
    "post-autoload-dump": [
      "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
      "@php artisan package:discover"
    ]
},
"config": {
    "preferred-install": "dist",
    "sort-packages": true
}
}

==============================================

更新:為了清楚起見,我已經在代碼中搜索了Laravel \\ Lumen,但沒有找到任何引用,但是當我搜索\\ vendor文件夾時,我得到了一些軟件包,其中包括確實引用了該內容的Amazon AWS(請參閱下文)。修復那些軟件包?

在此處輸入圖片說明

Laravel\\Lumen您的答案。 Lumen如何被使用?

您在代碼中的某處導入了錯誤的類。 唯一的例外是正在創建Illuminate\\Foundation\\Application ,這是正確的,但是在某處有類型提示期望Laravel\\Lumen\\Application 在代碼中搜索Laravel\\Lumen\\Application ,您可能會發現問題。

暫無
暫無

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

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