[英]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.