当我使用 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