2016-11-14 35 views
1

我剛剛將我目前的Lumen 5.3項目的依賴關係(作曲者更新)更新爲他們的最新版本。 現在一切似乎都被破壞了,開箱即用的所有illuminate/*依賴關係都被更新到v5.3.23,這似乎與v5.3.16有很多不同之處。Macroable.php中的BadMethodCallException第52行:方法shuffle不存在。 - 運行作曲者更新

我發現的第一個問題是在路由組中定義的名稱空間,它不再需要。

此代碼(即用於工作得很好)

$app->group(['prefix' => '{storeId}', 'namespace' => 'App\Http\Controllers'], function() use ($app) { 
    .... 
}); 

它現在給回ReflectionException因爲

Class App\Http\Controllers\App\Http\Controllers\MyController.php does not exists

嗯,這是一個簡單的辦法,我只是刪除了命名空間和它的工作

$app->group(['prefix' => '{storeId}'], function() use ($app) { 
    .... 
}); 

現在我得到一個非常奇怪的錯誤是沒有意義的我:

BadMethodCallException in Macroable.php line 52: Method shuffle does not exist.

每次嘗試使用Eloquent時都會拋出異常。需要說明的是,我的代碼庫中找不到任何方法shufflevendor文件夾中的唯一引用與fzaninotto/fakerilluminate/collection有關。

看來解決這個問題的唯一方法就是將流明降級到v5.2 *(我在我的composer.json中使用了v5.3.1,但它仍然帶來了所有的照明軟件包v5.3.23) 。

這些更新

Loading composer repositories with package information 
Updating dependencies (including require-dev) 
    - Removing symfony/polyfill-mbstring (v1.2.0) 
    - Installing symfony/polyfill-mbstring (v1.3.0) 
    Loading from cache 

    - Removing paragonie/random_compat (v2.0.3) 
    - Installing paragonie/random_compat (v2.0.4) 
    Downloading: 100% 

    - Removing illuminate/contracts (v5.3.16) 
    - Installing illuminate/contracts (v5.3.23) 
    Loading from cache 

    - Removing illuminate/filesystem (v5.3.16) 
    - Installing illuminate/filesystem (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/container (v5.3.16) 
    - Installing illuminate/container (v5.3.23) 
    Loading from cache 

    - Removing illuminate/events (v5.3.16) 
    - Installing illuminate/events (v5.3.23) 
    Loading from cache 

    - Removing illuminate/view (v5.3.16) 
    - Installing illuminate/view (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/validation (v5.3.16) 
    - Installing illuminate/validation (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/translation (v5.3.16) 
    - Installing illuminate/translation (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/console (v5.3.16) 
    - Installing illuminate/console (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/queue (v5.3.16) 
    - Installing illuminate/queue (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/pipeline (v5.3.16) 
    - Installing illuminate/pipeline (v5.3.23) 
    Loading from cache 

    - Removing illuminate/pagination (v5.3.16) 
    - Installing illuminate/pagination (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/session (v5.3.16) 
    - Installing illuminate/session (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/http (v5.3.16) 
    - Installing illuminate/http (v5.3.23) 
    Loading from cache 

    - Removing illuminate/hashing (v5.3.16) 
    - Installing illuminate/hashing (v5.3.23) 
    Loading from cache 

    - Removing illuminate/encryption (v5.3.16) 
    - Installing illuminate/encryption (v5.3.23) 
    Loading from cache 

    - Removing illuminate/database (v5.3.16) 
    - Installing illuminate/database (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/config (v5.3.16) 
    - Installing illuminate/config (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/cache (v5.3.16) 
    - Installing illuminate/cache (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/bus (v5.3.16) 
    - Installing illuminate/bus (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/broadcasting (v5.3.16) 
    - Installing illuminate/broadcasting (v5.3.23) 
    Downloading: 100% 

    - Removing illuminate/auth (v5.3.16) 
    - Installing illuminate/auth (v5.3.23) 
    Downloading: 100% 

    - Removing laravel/lumen-framework (v5.3.1) 
    - Installing laravel/lumen-framework (v5.3.2) 
    Downloading: 100% 

    - Removing aws/aws-sdk-php (3.19.23) 
    - Installing aws/aws-sdk-php (3.19.24) 
    Loading from cache 

    - Removing sebastian/recursion-context (1.0.2) 
    - Installing sebastian/recursion-context (1.0.3) 
    Loading from cache 

    - Removing phpunit/phpunit (5.6.2) 
    - Installing phpunit/phpunit (5.6.3) 
    Downloading: 100% 

Writing lock file 
Generating autoload files 

回答

1

今天早上大約在同一時間有這個錯誤。

  1. 刪除路由中的命名空間。
  2. 第二次更新作曲家。

當我運行作曲家信息時,我發現當Illuminate軟件包的其餘部分完成時,Illuminate/Support沒有更新。

illuminate/session v5.3.23 Illuminate Session包。

illuminate/support v5.3.16照明支持包。

illuminate/translation v5.3.23 The Illuminate翻譯軟件包。

有趣的是,最初,我做了另一個作曲家更新。但它沒有解決。所以,我做了什麼,是我倒退了Laravel流明包(跑了作曲家更新),然後再次更新到最新。

我覺得有些東西在包更新過程中被搞砸了。

+0

再次運行'composer update'解決了這個問題,實際上我先將流明降級到'5.2。*',刪除了vendor文件夾和composer.lock,然後是'composer install',然後我改成'5.3。*'並做了相同的過程,這次'illuminate/support'軟件包已更新爲'v5.3.23'。謝謝您的幫助! – peppeocchi

1

我得到同樣的事情的依賴關係。我只是再次運行更新,它更新了照明/支持。這解決了我的問題。我認爲當他們推動composer軟件包的時候會錯過一些東西。

相關問題