i运行
rm -rf vendor && composer update codeception/codeception -v
我有错误:
您的要求无法解决到可安装的软件包集。
Problem 1
- The requested package phpunit/phpunit (locked at 4.1.6, required as 4.8.x-dev) is satisfiable by phpunit/phpunit[4.1.6] but these conflict with your requirements or minimum-stability.
Problem 2
- The requested package behat/gherkin (locked at v2.3.5, required as ~4.4.0) is satisfiable by behat/gherkin[v2.3.5] but these conflict with your requirements or minimum-stability.
Problem 3
- behat/behat v2.5.5 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.5 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.4 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.3 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.2 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.1 requires behat/gherkin ~2.3.0 -> satisfiable by behat/gherkin[2.3.x-dev, v2.3.0, v2.3.1, v2.3.2, v2.3.3, v2.3.4, v2.3.5] but these conflict with your requirements or minimum-stability.
- behat/behat v2.5.0 requires behat/gherkin ~2.2.9 -> satisfiable by behat/gherkin[v2.2.9] but these conflict with your requirements or minimum-stability.
- Installation request for behat/behat 2.5.* -> satisfiable by behat/behat[v2.5.0, v2.5.1, v2.5.2, v2.5.3, v2.5.4, v2.5.5].
当前在require-dev中有以下设置:
"phpunit/phpunit": "4.8.x-dev",
"phpunit/dbunit": "1.3.*",
"codeception/codeception": "2.2.7",
"fzaninotto/faker": "1.4.*",
"flow/jsonpath": "0.2.*",
"behat/behat": "2.5.*",
"behat/gherkin": "~4.4.0",
以及我们公司创建的一个不相关的翻译包。
我正在尝试将CodeCeption更新为最新版本。
我已经试验了设置Phpunit各种版本,但我无法摆脱错误。
我做错了什么?
update
我更新了Composer.json以使用与
中相同的包装版本composer show
输出,除
外"zendframework/zend-crypt": "2.3.*",
ran
composer update
仍然遇到错误:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- mabuzagu/pdo-dblib-module dev-master requires doctrine/doctrine-orm-module ^1.0.0 -> satisfiable by doctrine/doctrine-orm-module[1.0.0, 1.1.0].
- mabuzagu/pdo-dblib-module dev-master requires doctrine/doctrine-orm-module ^1.0.0 -> satisfiable by doctrine/doctrine-orm-module[1.0.0, 1.1.0].
- doctrine/doctrine-orm-module 1.0.0 requires doctrine/orm >=2.5,<2.7 -> satisfiable by doctrine/orm[v2.5.0, v2.5.1, v2.5.2, v2.5.3, v2.5.4, v2.5.5].
- doctrine/orm v2.5.5 requires doctrine/common >=2.5-dev,<2.7-dev -> satisfiable by doctrine/common[2.5.x-dev, 2.6.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3, v2.6.0, v2.6.1, v2.6.2] but these conflict with your requirements or minimum-stability.
- doctrine/orm v2.5.4 requires doctrine/common >=2.5-dev,<2.7-dev -> satisfiable by doctrine/common[2.5.x-dev, 2.6.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3, v2.6.0, v2.6.1, v2.6.2] but these conflict with your requirements or minimum-stability.
- doctrine/orm v2.5.3 requires doctrine/common >=2.5-dev,<2.7-dev -> satisfiable by doctrine/common[2.5.x-dev, 2.6.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3, v2.6.0, v2.6.1, v2.6.2] but these conflict with your requirements or minimum-stability.
- doctrine/orm v2.5.2 requires doctrine/common >=2.5-dev,<2.6-dev -> satisfiable by doctrine/common[2.5.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3] but these conflict with your requirements or minimum-stability.
- doctrine/orm v2.5.1 requires doctrine/common >=2.5-dev,<2.6-dev -> satisfiable by doctrine/common[2.5.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3] but these conflict with your requirements or minimum-stability.
- doctrine/orm v2.5.0 requires doctrine/common >=2.5-dev,<2.6-dev -> satisfiable by doctrine/common[2.5.x-dev, v2.5.0, v2.5.0-beta1, v2.5.1, v2.5.2, v2.5.3] but these conflict with your requirements or minimum-stability.
- doctrine/doctrine-orm-module 1.1.0 requires php ^5.6 || ^7.0 -> your PHP version (5.5.9) does not satisfy that requirement.
- Installation request for mabuzagu/pdo-dblib-module dev-master -> satisfiable by mabuzagu/pdo-dblib-module[dev-master].
为什么?在我设置一些新版本之前,它可能不应该现在更新任何内容。
只需运行 composer update
我做错了什么?
问题是您正在尝试更新单个软件包,而不是按照codeception
的较新版本要求更新整个软件包。
您可以在错误消息中看到,所有其他依赖项都渴望更新,但是locked
是composer.lock
文件中指定的版本。
删除.lock文件可能会有所帮助,但不是"正确的方式"。只需明确告诉作曲家根据composer.json
更新所有内容。
p.s。您也可以考虑将来在您提到的命令中使用composer clear-cache
,因为您绝对希望从Scratch下载并安装所有依赖项。
有两个点:
- 作曲家通常无法与依赖关系执行更新。
-
codeception不绑定到您的项目。(如果您没有故意这样做)让您可以这样做:
作曲家删除codeception/codeception
作曲家需要" codeception/codeception:2.2.7"
P.S。最近有同样的问题从2.0