发布于 2015-05-28 23:58:30 | 1047 次阅读 | 评论: 1 | 来源: PHPERZ

这里有新鲜出炉的Composer中文文档,程序狗速度看过来!

Composer PHP中依赖关系管理工具

Composer 是PHP中用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的库文件。


问题描述

当我使用 composer 给 laravel 5 添加 illuminate\Html 模块时,出现了如下的错误:

[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”

可问题是,我没有在我的 composer.json 里面发现任何 “^1.0.1” 啊。

解决方案

参考这个网站:composer update error

应该首先执行 composer self-update, 然后在执行 composer update。其原因是composer自己本身有更新。

但是参考的页面上也有人提到,即使自己的 composer 是最新的,这么做依然可以解决 update 出现的错误。wierd。

新问题

再次执行 composer update的时候,还是出错了

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 28

解决方案

参考网站:laracasts.com/discuss

php artisan clear-compiled 需要在执行 composer update 之前执行。所以当遇到错误的时候,可以手动删除 vender/compile.php,然后重新 update。而且需要记住,在update 之后,需要再执行一次 composer optimize 来再次生成compile.php。

可以将下面几行命令保存为脚本,在需要更新的时候使用,以减少出错。

php artisan down
php artisan clear-compiled
composer update --no-dev
php artisan optimize
php artisan up


最新网友评论  共有(1)条评论 发布评论 返回顶部
dmmjmcz 发布于2015-07-23 14:01:14
mark
支持(0)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务