我试图更新我的 Yii,但我收到以下消息:
[alexandre@Mac-mini-de-Alexandre:gestao_web (master)] php composer.phar require "yiisoft/yii2:~2.0.15" --update-with-dependencies
./composer.json has been updated
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
- Installation request for yidas/yii2-composer-bower-skip (locked at 2.0.12, required as ~2.0.0) -> satisfiable by yidas/yii2-composer-bower-skip[2.0.12].
- yiisoft/yii2 2.0.15 requires bower-asset/inputmask ~3.2.2 | ~3.3.5 -> satisfiable by yidas/yii2-composer-bower-skip[2.0.13].
- yiisoft/yii2 2.0.15.1 requires bower-asset/inputmask ~3.2.2 | ~3.3.5 -> satisfiable by yidas/yii2-composer-bower-skip[2.0.13].
- Conclusion: don't install yidas/yii2-composer-bower-skip 2.0.13
- Installation request for yiisoft/yii2 ~2.0.15 -> satisfiable by yiisoft/yii2[2.0.15, 2.0.15.1].
Installation failed, reverting ./composer.json to its original content.
[alexandre@Mac-mini-de-Alexandre:gestao_web (master)] ./yii
This is Yii version 2.0.12.2.
这是我的composer.json
:
{
"name": "yiisoft/yii2-app-basic",
"description": "Yii 2 Basic Application Template",
"keywords": ["yii2", "framework", "basic", "application template"],
"homepage": "http://www.yiiframework.com/",
"type": "project",
"license": "BSD-3-Clause",
"support": {
"issues": "https://github.com/yiisoft/yii2/issues?state=open",
"forum": "http://www.yiiframework.com/forum/",
"wiki": "http://www.yiiframework.com/wiki/",
"irc": "irc://irc.freenode.net/yii",
"source": "https://github.com/yiisoft/yii2"
},
"minimum-stability": "stable",
"require": {
"php": ">=5.4.0",
"yidas/yii2-composer-bower-skip": "~2.0.0",
"yiisoft/yii2": ">=2.0.7",
"yiisoft/yii2-bootstrap": "*",
"yiisoft/yii2-swiftmailer": "*",
"2amigos/yii2-resource-manager-component": "*",
"moonlandsoft/yii2-phpexcel": "*",
"boundstate/yii2-mailgun": "*",
"e96/yii2-mailgun-mailer": "*"
},
"require-dev": {
"yiisoft/yii2-codeception": "*",
"yiisoft/yii2-debug": "*",
"yiisoft/yii2-gii": "*",
"yiisoft/yii2-faker": "*"
},
"config": {
"process-timeout": 1800
},
"scripts": {
"post-create-project-cmd": [
"yii\composer\Installer::postCreateProject"
]
},
"extra": {
"yii\composer\Installer::postCreateProject": {
"setPermission": [
{
"runtime": "0777",
"web/assets": "0777",
"yii": "0755"
}
],
"generateCookieValidationKey": [
"config/web.php"
]
},
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
}
我尝试将作曲家更改为它:
"yiisoft/yii2": ">=2.0.12"
但我有同样的错误。
有谁知道这个问题可能是什么?我该如何解决?
在这种情况下,您可能需要一个--update-with-all-dependencies
开关:
php composer.phar require "yiisoft/yii2:~2.0.15" --update-with-all-dependencies
--update-with-dependencies:同时更新新需要的包的依赖关系,除了那些根需求。
--update-with-all-dependencies:同时更新新需要的包的依赖关系,包括那些根需求的包。
https://getcomposer.org/doc/03-cli.md#require
顺便说一句:你真的应该用真正的约束替换composer.json
中的所有*
- 每次更新都可能破坏你的应用程序。