當我使用 composer 給 laravel 5 添加 illuminate\Html
模塊時,出現了以下的錯誤:php
[RuntimeException]
Could not load package dragonrun1/phpspec in http://packagist.org: [UnexpectedValueException] Could not parse version constraint ^
1.0.1: Invalid version string "^1.0.1"html
可問題是,我沒有在個人 composer.json 裏面發現任何 "^1.0.1" 啊。laravel
參考這個網站:composer update errorjson
應該首先執行 composer self-update
, 而後在執行 composer update
。其緣由是composer本身自己有更新。composer
可是參考的頁面上也有人提到,即便本身的 composer 是最新的,這麼作依然能夠解決 update 出現的錯誤。wierd。網站
再次執行 composer update的時候,仍是出錯了code
PHP Fatal error: Call to undefined method Illuminate\Foundation\Application::getCachedCompilePath() in /var/www/html/ninebb/vendor/laravel/framework/src/Illuminate/Foundation/Console/ClearCompiledCommand.php on line 28htm
參考網站:laracasts.com/discussget
php artisan clear-compiled
須要在執行 composer update
以前執行。因此當遇到錯誤的時候,能夠手動刪除 vender/compile.php
,而後從新 update。並且須要記住,在update 以後,須要再執行一次 composer optimize
來再次生成compile.php。string
能夠將下面幾行命令保存爲腳本,在須要更新的時候使用,以減小出錯。
php artisan down php artisan clear-compiled composer update --no-dev php artisan optimize php artisan up