Composer设置忽略版本匹配的例子

执行composer install遇到错误:Your requirements could not be resolved to an installable set of packages. 这是因为不匹配composer.json要求的版本。

完整错误如下:

PHP

vagrant@homestead:/usr/share/nginx/html/laravel-blog$ sudo composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for doctrine/instantiator 1.0.3 -> satisfiable by doctrine/instantiator[1.0.3].
    - doctrine/instantiator 1.0.3 requires php ~5.3 -> your PHP version (7.0.3) does not satisfy that requirement.
  Problem 2
    - doctrine/instantiator 1.0.3 requires php ~5.3 -> your PHP version (7.0.3) does not satisfy that requirement.
    - phpunit/phpunit-mock-objects 2.3.0 requires doctrine/instantiator ~1.0,>=1.0.1 -> satisfiable by doctrine/instantiator[1.0.3].
    - Installation request for phpunit/phpunit-mock-objects 2.3.0 -> satisfiable by phpunit/phpunit-mock-objects[2.3.0].

提示我的PHP 7版本太高,不符合composer.json需要的版本,但是在PHP 7下应该也是可以运行的,composer可以设置忽略版本匹配,命令是:

composer install --ignore-platform-reqs

or

composer update --ignore-platform-reqs
再次执行composer命令可以正常安装包了。

如果提示警告:

Cannot create cache directory /home/vagrant/.composer/cache/repo/https---packagist.org/, or directory is not writable. Proceeding without cache
Cannot create cache directory /home/vagrant/.composer/cache/files/, or directory is not writable. Proceeding without cache

这是在虚拟机中执行composer,提示这个目录没有可写权限,composer无法缓存下载的包,这样就每次都得重新下载,把目录改成可写可读即可。

sudo chmod -R 777 /home/vagrant/.composer/cache/files/

另外,在虚拟机中也设置composer为国内镜像,不然下载速度慢的要死,执行:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

OK,大功告成。

时间: 2024-10-05 08:29:52

Composer设置忽略版本匹配的例子的相关文章

Composer设置忽略版本匹配的方法_php实例

Composer简介 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们.Composer 不是一个包管理器.是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装.默认情况下它不会在全局安装任何东西.因此,这仅仅是一个依赖管理. 执行composer install遇到错误:Your requirements co

TortoiseSVN设置忽略文件和目录文件夹

TortoiseSVN设置忽略文件和目录文件夹  在多数项目中你总会有文件和目录不需要进行版本控制.这可能包括一些由编译器生成的文件,*.obj,*.lst,或许是一个用于存放可执行程序的输出文件夹.只要你提交修改,TortoiseSVN 就会在提交对话框的文件列表中显示出未版本控制文件.当然你可以关闭这个显示,不过你可能会忘记添加新的源文件.   最好的避免类似问题的方法是添加参考文件到该项目的忽略列表.这样他们就永远不会出现在提交对话框中,而真正的未版本控制文件则仍然列出. 方法一 在资源管

Android 编译出错版本匹配问题解决办法

Android 编译出错版本匹配问题解决办法 解决问题的关键在于版本匹配, compileSdkVersion compileSdkVersion targetSdkVersion 这三个参数的整数值都应该是一样的,这里我全部设置成23, 在这之前我还升级了:appcompat到com.Android.support:appcompat-v7:24.0.0 最终编译成功,剩下的问题都是代码问题了 apply plugin: 'com.android.application' android {

PostgreSQL 数组忽略大小写匹配

PostgreSQL 数组忽略大小写匹配 作者 digoal 日期 2016-11-19 标签 PostgreSQL , 开发 , 数组 , any匹配 , 忽略大小写 背景 一位兄弟的开发需求,要求不区分大小写,匹配数组内的字符串. 如下,这样的匹配. postgres=# select 'a' = any(array['A','1']); ?column? ---------- f (1 row) 需要将数组内的字符串转换为小写后匹配. postgres=# select 'a' = low

jQuery实现搜索关键字自动匹配的例子

例子一, 在项目中,有时候需要用户选择城市,但是城市太多,用户选择起来不太方便,所以提供了一个用户可以通过输入框输入城市的汉字或者拼音简写.结果示意图如下:    当输入拼音后结果示意图如下:   实现代码如下: <html><head><title>实时查询城市通过姓名或拼音简写</title></head><meta charset = "utf-8" ><script type="text/j

Linux系统中设置多版本PHP共存配合Nginx服务器使用_php技巧

应用环境 LNMP的环境,当前PHP版本5.3.8,遇到一个应用需求只支持PHP 5.2.x,又希望保持现有应用还是用PHP 5.3.8.也就是说需要两个版本的PHP同时存在,供nginx根据需要调用不同版本. 思路 Nginx是通过PHP-FastCGI与PHP交互的.而PHP-FastCGI运行后会通过文件.或本地端口两种方式进行监听,在Nginx中配置相应的FastCGI监听端口或文件即实现Nginx请求对PHP的解释. 既然PHP-FastCGI是监听端口和文件的,那就可以让不同版本的P

git临时忽略文件命令使用例子

git 中要在版本库中忽略某些文件,第一选择选择应该是使用 ".gitignore" 配置文件,该方式是永久忽略,如果要忽略某个已经在版本库中的文件,那么先要从版本库中移除,然后.gitignore中的配置才会生效. git 还有一种临时忽略文件的方式,命令为: git update-index --assume-unchanged 这种方式忽略可以让该文件还继续保留在版本库中,但是本地修改文件后,不会提示有修改,也就不需要提交. 既然是临时忽略,那么也可以解除临时忽略,命令为: gi

svn 忽略 版本 控制-svn忽略某个文件版本控制后,不要让他提交后删除服务器的这个文件。

问题描述 svn忽略某个文件版本控制后,不要让他提交后删除服务器的这个文件. 本机用的TortoiseSVN,将config.php加入忽略列表后,点提交,会将服务器上的config.php删除.有什么办法忽略config.php,但又不会删除服务器上的config.php呢?? 解决方案 那不是有配置文件的嘛!

js动态设置div的值下例子_javascript技巧

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu