composer安装composer包报Your requirements could not be resolved

尘埃 · · 53 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

一:使用composer安装composer包时遇到Your requirements could not be resolved to an installable set of packages
图片描述
分析:
这是由于doctrine/instantiator的1.1.0版本必须是PHP7.1,然而我的PHP环境是PHP7.0.12,但是我发现一个问题,我的composer.json文件内没有doctrine/instantiator包信息,那么为什么回报这样一个错误呢?
这时候我找到vendor/doctrine/instantiator发现doctrine/instantiator包已经安装在我的框架中了,打开vendor/doctrine/instantiator目录下的composer.json文件发现,这个包所需要的环境是PHP7.1:
图片描述
找到doctrine/instantiator包的地址:https://packagist.org/package...

这时候发现doctrine/instantiator的1.1.0版本所需的PHP环境为7.1,所以我想是不是由于我的框架中的doctrine/instantiator包的版本是1.1.0导致在这个框架中安装composer包失败的呢?

解决:
1:将doctrine/instantiator包的版本变为我们需要的版本(这里我将doctrine/instantiator包的版本变为1.0.x-dev)

composer require doctrine/instantiator "1.0.x-dev"

2:将doctrine/instantiator包变为所需要的版本后再安装你需要的composer包,这时候就不会报错误了(这里我以huaweichenai/baidu-discern包为例)
图片描述
这是使用composer安装就成功了

网上有一种方法:使用 composer install --ignore-platform-reqs 命令设置忽略版本匹配然后再进行安装你所需要的composer包,这种方法我进行测试后发现还是报错,具体为什么就不清楚了,有知道为什么的欢迎留言告诉博主
图片描述

本文来自:Segmentfault

感谢作者:尘埃

查看原文:composer安装composer包报Your requirements could not be resolved

53 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet