请求的包存在,但这些包被约束拒绝



我想将此标签从分支1.x添加到我的项目中。

我指定:"monolog/monolog": "dev-1.x#1.23.0"

然后跑composer update monolog/monolog

作曲家 说:

Problem 1
- The requested package monolog/monolog dev-1.x#1.23.0 exists as monolog/monolog[1.0.0, 1.0.0-RC1, 1.0.1, 1.0.2, 1.1.0, 1.10.0, 1.11.0, 1.12.0, 1.13.0, 1.13.1, 1.14.0, 1.15.0, 1.16.0, 1.17.0, 1.17.1, 1.17.2, 1.18.0, 1.18.1, 1.18.2, 1.19.0, 1.2.0, 1.2.1, 1.20.0, 1.21.0, 1.22.0, 1.22.1, 1.23.0, 1.3.0, 1.3.1, 1.4.0, 1.4.1, 1.5.0, 1.6.0, 1.7.0, 1.8.0, 1.9.0, 1.9.1, 1.x-dev, dev-master, 2.x-dev] but these are rejected by your constraint.

我想从特定分支中提取特定标签。我该怎么办?这个答案表明我应该没事。

更新:

在遵循 Loek 的建议并删除实际标签之前的所有内容后,我得到这个: The requested package monolog/monolog (installed at 1.21.0, required as 1.23.0) is satisfiable by monolog/monolog[1.21.0] but these conflict with your requirements or minimum-stability.

我已经设置"minimum-stability": "dev"了。

您可以使用composer why-not命令查看哪些包与您指定的版本冲突。

因此,在不对 composer.json 进行任何更改的情况下,运行:

composer why-not monolog/monolog 1.23.0

这应该告诉您冲突发生的位置。

您还可以采取一些措施来降低此类冲突的可能性:

  • 在版本约束中不要那么严格。与包的特定版本挂钩使 Composer 查找工作包集的自由度降低。
  • 编辑约束,然后在没有任何参数的情况下运行composer update,让 Composer 找到满足这些约束的最佳包集,而不是强制它一次更改一个包。

我遇到了同样的问题,问题出在Packagist上,我在Github上更新了版本,但尚未在Packagist上更新。因此,在更新后,问题得到了解决。

您可以指定要下载的标签。如果软件包维护者很好地标记了他们的版本,那么它是什么分支或稳定性并不重要。如果指定1.23.0,它将始终拉入1.23.0


编辑

可能有一些包冲突。查看@IMSoP的答案,寻找比我更容易解决的方法。

我的将是:更新所有包,作赞器应该显示哪些包正在冲突。

在保持完整一段时间后,我在phpmyadmin上遇到了类似的问题。 我意识到不存在的版本 4.5.0,过去已删除或输入错误

似乎对我有帮助的是手动编辑 -从 composer.json 中删除记录并发出作曲家安装命令。

下一步是安装其中一个混凝土版本,该版本已经提到有问题 - 被约束拒绝 4.7.0 -php7.0 composer install phpmyadmin/phpmyadmin:4.7.0

我还添加了两个设置 - 但这些设置似乎不能单独工作

"minimum-stability": "dev", "prefer-stable": true,

我最初的错误消息是

Problem 1 - The requested package phpmyadmin/phpmyadmin 4.5.0.* exists as phpmyadmin/phpmyadmin[4.0.0, 4.0.1, 4.0.10, 4.0.10.1, 4.0.10.2, 4.0.10.3, 4.0.10.4, 4.0.10.5, 4.0.10.6, 4.0.10.7, 4.0.10.8, 4.0.10.9, 4.0.2, 4.0.3, 4.0.4, 4.0.4.1, 4.0.4.2, 4.0.5, 4.0.6, 4.0.7, 4.0.8, 4.0.9, 4.7.0, 4.7.1, 4.7.2, 4.7.3, 4.7.4, 4.7.5, 4.7.6, 4.7.7, 4.7.8, 4.7.9, 4.7.x-dev, 4.8.0, 4.8.0.1, 4.8.1, 4.8.2, 4.8.3, 4.8.4, 4.8.5, 4.8.x-dev, 4.9.0, 4.9.0.1, 4.9.1, 4.9.x-dev, 5.0.x-dev, dev-master, 5.1.x-dev] but these are rejected by your constraint.

最新更新