当你看log时,你可以看到这一点,这没有任何意义:
Your requirements could not be resolved to an installable set of
packages.
Problem 1
- meridius/coding-standard 1.0.0 requires consistence/coding-standard ^0.10.1 -> satisfiable by consistence/coding-standard[0.10.1].
- meridius/coding-standard 1.0.1 requires consistence/coding-standard ^0.10.1 -> satisfiable by consistence/coding-standard[0.10.1].
- Conclusion: don't install consistence/coding-standard 0.10.1
- Installation request for meridius/coding-standard * -> satisfiable by meridius/coding-standard[1.0.0, 1.0.1].
我尝试构建的项目有"squizlabs/php_codesniffer": "^2.5"
和"meridius/coding-standard": "^1"
作为要求。在这些情况下,更新正常:
我不明白为什么第二种情况有效但是当两种包都需要时它不会。
squizlabs/php_codesniffer
的罪魁祸首似乎是consistence/coding-standard
,而且正是我正在建设的项目。
如果我composer show -t | grep -C4 squizlabs/php_codesniffer
我可以看到squizlabs/php_codesniffer
需要多次,但所有版本限制对我来说都很好。
您可以看到composer.json here。
答案 0 :(得分:1)
似乎是Composer中的一个错误。
这有效:
"require-dev": {
"meridius/coding-standard": "*",
"squizlabs/php_codesniffer": "^2.5"
},
这不起作用:
"require-dev": {
"squizlabs/php_codesniffer": "^2.5",
"meridius/coding-standard": "*"
},
据我所知,作曲家的要求顺序无关紧要(有人可能会证实这一点)。 Report it as a bug