下面由composer使用教程栏目给大家介绍Composer常见错误解决方法,希望对需要的朋友有所帮助!
执行composer install遇到错误:Your requirements could not be resolved to an installable set of packages. 这是因为不匹配composer.json要求的版本。
完整错误如下:
1 2 3 4 5 6 7 8 9 10 11 12 | vagrant@homestead:/usr/share/nginx/html/laravel-blog$ sudocomposerinstall
Loadingcomposerrepositorieswithpackage information
Installingdependencies (includingrequire-dev) fromlockfile
Yourrequirementscouldnot beresolvedto aninstallablesetofpackages.
Problem 1
- Installationrequestfor doctrine/instantiator 1.0.3 -> satisfiablebydoctrine/instantiator[1.0.3].
- doctrine/instantiator 1.0.3 requiresphp ~5.3 -> yourPHPversion (7.0.3) doesnot satisfythatrequirement.
Problem 2
- doctrine/instantiator 1.0.3 requiresphp ~5.3 -> yourPHPversion (7.0.3) doesnot satisfythatrequirement.
- phpunit/phpunit-mock-objects 2.3.0 requiresdoctrine/instantiator ~1.0,>=1.0.1 -> satisfiablebydoctrine/instantiator[1.0.3].
- Installationrequestfor phpunit/phpunit-mock-objects 2.3.0 -> satisfiablebyphpunit/phpunit-mock-objects[2.3.0].
|
登录后复制
提示我的PHP 7版本太高,不符合composer.json需要的版本,但是在PHP 7下应该也是可以运行的,composer可以设置忽略版本匹配,命令是:
1 2 3 | composerinstall --ignore-platform-reqs
or
composerupdate --ignore-platform-reqs
|
登录后复制
再次执行composer命令可以正常安装包了。
如果提示警告:
1 2 | Cannotcreatecachedirectory /home/vagrant/.composer/cache/repo/https---packagist.org/, or directoryis not writable. Proceedingwithoutcache
Cannotcreatecachedirectory /home/vagrant/.composer/cache/files/, or directoryis not writable. Proceedingwithoutcache
|
登录后复制
这是在虚拟机中执行composer,提示这个目录没有可写权限,composer无法缓存下载的包,这样就每次都得重新下载,把目录改成可写可读即可。
1 | sudo chmod -R 777 /home/vagrant/.composer/cache/files/
|
登录后复制
另外,在虚拟机中也设置composer为国内镜像,不然下载速度慢的要死,执行:
1 | composerconfig -g repo.packagistcomposerhttps:
|
登录后复制
OK,大功告成。
更多composer相关技术文章,请访问composer栏目://m.sbmmt.com/tool/composer/
以上是Composer常见错误解决方法介绍的详细内容。更多信息请关注PHP中文网其他相关文章!