php 无法将需求解析为一组可安装的软件包
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/20996767/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Requirements could not be resolved to an installable set of packages
提问by Proen?a
I was trying to install jasonlewis/enhanced-router package in laravel-starter-kit, and when I run composer update it doesn't install and gives some errors. Initially I thought the problem was from the composer line for the jasonlewis/enhanced-router ("jasonlewis/enhanced-router": "dev-master") but I removed it and have the same error.
我试图在 laravel-starter-kit 中安装 jasonlewis/enhanced-router 包,当我运行 composer update 时它没有安装并给出一些错误。最初我认为问题出在 jasonlewis/enhanced-router ( "jasonlewis/enhanced-router": "dev-master")的作曲家行,但我将其删除并出现相同的错误。
I tried to search for some similar problems, but can't figure out what is the dependency problem I'm getting.
我试图搜索一些类似的问题,但无法弄清楚我遇到的依赖问题是什么。
Below is the result I get after running composer update:
下面是我运行后得到的结果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
- Conclusion: remove laravel/framework 4.0.x-dev
- Conclusion: don't install laravel/framework 4.0.x-dev
- Conclusion: don't install laravel/framework v4.0.10
- Conclusion: don't install laravel/framework v4.0.9
- Conclusion: don't install laravel/framework v4.0.8
- Conclusion: don't install laravel/framework v4.0.7
- Conclusion: don't install laravel/framework v4.0.6
- Conclusion: don't install laravel/framework v4.0.5
- Conclusion: don't install laravel/framework v4.0.4
- Conclusion: don't install laravel/framework v4.0.3
- Conclusion: don't install laravel/framework v4.0.2
- Conclusion: don't install laravel/framework v4.0.1
- Conclusion: don't install laravel/framework v4.0.0
- Conclusion: don't install laravel/framework v4.0.0-BETA4
- Installation request for zizaco/confide dev-master -> satisfiable by zizaco/confide[dev-master].
- Conclusion: don't install laravel/framework v4.0.0-BETA3
- bllim/datatables dev-master requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev,
4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.
9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminat
e/filesystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.
6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4
.1.8, v4.1.9].
- bllim/datatables 1.3.0 requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev, 4.1.x
-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v4
.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminate/fil
esystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4
.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8,
v4.1.9].
- bllim/datatables dev-master requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev,
4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.
9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminat
e/filesystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.
6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4
.1.8, v4.1.9].
- bllim/datatables v1.3.1 requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev, 4.1.
x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v
4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminate/fi
lesystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v
4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8
, v4.1.9].
- bllim/datatables v1.3.2 requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev, 4.1.
x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v
4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminate/fi
lesystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v
4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8
, v4.1.9].
- bllim/datatables v1.3.3 requires illuminate/filesystem >=4.0.0 -> satisfiable by laravel/framework[4.0.x-dev, 4.1.
x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v
4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9], illuminate/fi
lesystem[4.0.x-dev, 4.1.x-dev, dev-master, 4.2.x-dev, v4.0.0, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v
4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8
, v4.1.9].
- Can only install one of: laravel/framework[v4.0.0-BETA2, 4.1.x-dev].
- Can only install one of: laravel/framework[v4.0.0-BETA2, dev-master].
- Can only install one of: laravel/framework[v4.0.0-BETA2, 4.2.x-dev].
- Can only install one of: laravel/framework[v4.1.0, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.1, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.10, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.11, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.12, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.2, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.3, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.4, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.5, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.6, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.7, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.8, v4.0.0-BETA2].
- Can only install one of: laravel/framework[v4.1.9, v4.0.0-BETA2].
- don't install illuminate/filesystem 4.0.x-dev|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.0|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.1|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.10|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.2|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.3|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.4|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.5|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.6|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.7|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.8|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.0.9|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem 4.1.x-dev|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem 4.2.x-dev|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.0|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.1|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.10|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.11|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.12|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.2|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.3|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.4|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.5|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.6|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.7|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.8|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem v4.1.9|don't install laravel/framework v4.0.0-BETA2
- don't install illuminate/filesystem dev-master|don't install laravel/framework v4.0.0-BETA2
- Installation request for laravel/framework 4.0.* -> satisfiable by laravel/framework[4.0.x-dev, v4.0.0, v4.0.0-BET
A2, v4.0.0-BETA3, v4.0.0-BETA4, v4.0.1, v4.0.10, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9].
- Installation request for bllim/datatables * -> satisfiable by bllim/datatables[1.3.0, dev-master, v1.3.1, v1.3.2,
v1.3.3].
And my composer.json
还有我的 composer.json
{
"name": "andrew13/Laravel-4-Bootstrap-Starter-Site",
"description": "Laravel 4 Starter Site",
"keywords": ["laravel","Starter Site"],
"license": "MIT",
"authors": [
{
"name": "Andrew Elkins",
"homepage": "http://www.andrewelkins.com"
}
],
"require": {
"laravel/framework": "4.0.*",
"twbs/bootstrap": "3.0.0",
"zizaco/confide": "dev-master",
"zizaco/entrust": "dev-master",
"jasonlewis/basset": "dev-master",
"robclancy/presenter": "1.2.*",
"j20/php-uuid": "dev-master",
"bllim/datatables": "*",
"blueimp/jquery-file-upload": "dev-master",
"jasonlewis/enhanced-router": "dev-master"
},
"require-dev": {
"way/generators": "dev-master",
"mockery/mockery": "dev-master@dev",
"summerstreet/woodling": "0.1.*",
"barryvdh/laravel-ide-helper": "dev-master",
"leafo/lessphp": "v0.4.0",
"natxet/CssMin": "dev-master",
"lmammino/jsmin4assetic": "1.0.*"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/library",
"app/models",
"app/presenters",
"app/database/migrations",
"app/database/seeds",
"app/tests/library"
]
},
"scripts": {
"pre-update-cmd": [
"php artisan clear-compiled"
],
"post-install-cmd": [
"php artisan optimize"
],
"post-update-cmd": [
"php artisan optimize"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "dev"
}
I did not start from basic Laravel package, I've used andrew13/Laravel-4-Bootstrap-Starter-Site
我不是从基本的 Laravel 包开始的,我用过 andrew13/Laravel-4-Bootstrap-Starter-Site
回答by Danack
Welcome to the worst feature of Composer!
欢迎来到 Composer 最糟糕的功能!
So the problem is that you have conflict in your dependencies that is hard to spot.
所以问题是你的依赖项存在难以发现的冲突。
You have a requirement for "laravel/framework": "4.0.*",in your composer.json. You also have a requirement for "zizaco/confide": "dev-master"
您"laravel/framework": "4.0.*",的 composer.json 中有一个要求。你还有一个要求"zizaco/confide": "dev-master"
Looking in the composer.json for 'zizaco/confide' in github we see:
在 github 中查看 composer.json 中的“zizaco/confide”,我们看到:
"illuminate/support": "4.1.x",
"照亮/支持": "4.1.x",
The Composer feature that's causing you a problem is that the replacekeyword OPERATES GLOBALLY ACROSS THE WHOLE OF PACKAGIST.
给您带来问题的 Composer 功能是replace关键字OPERATES GLOBALLY ACROSS THE WHOLE OF PACKAGIST。
So because the 'illuminate/support' package is replace'd by Laravel itselfwhen Composer tries to satisfy the requirement of "illuminate/support": "4.1.x" it actually tries to download laravel version 4.1.x instead.
因此,因为当 Composer 试图满足 "illuminate/support": "4.1.x" 的要求时,'illuminate/support' 包被 Laravel 本身替换了,它实际上尝试下载 Laravel 版本 4.1.x。
That clashes with your requirement of laravel version 4.0.* and so the set of dependencies can't be resolved.
这与您对 laravel 版本 4.0.* 的要求相冲突,因此无法解决依赖项集。
I think there may be no trivial solution to your problem.
我认为您的问题可能没有微不足道的解决方案。
I was going to suggest specifying an earlier version of zizaco/confide rather than dev-master, that is dependent on illuminate/support version 4.0.x rather than 4.1.x - however that would mean switching from zizaco/confide 3.x to 2.x which is probably not acceptable.
我打算建议指定一个较早版本的 zizaco/confide 而不是 dev-master,这取决于照明/支持版本 4.0.x 而不是 4.1.x - 但是这意味着从 zizaco/confide 3.x 切换到 2 .x 这可能是不可接受的。
The only other option would be to change your requirement from laravel 4.0.x to 4.1.* - which may or may not be acceptable, based on how much work that would cause you.
唯一的其他选择是将您的要求从 laravel 4.0.x 更改为 4.1.* - 这可能会或可能不可接受,这取决于会导致您多少工作。

