How to resolve Bower dependency version conflicts?
我有一个项目依赖于这两个方面:
- jQuery~1.9-1
- 另一个项目反过来依赖jquery>=1.7.2
但当我运行bower install时,它最终安装了jquery 2.0.2。这个好像坏了。
我如何才能(a)使它正确地解决约束,或(b)显式地强制安装最终版本(解决方法)?
- 机票:Github.com/bower/bower/issues/540
- 你在这里有两个项目——一个是JQ版本,另一个是不同的版本,所以我认为你的问题需要更详细。
- 你有没有找到解决这一问题的办法,因为我有同样的事情,而尼尔赫姆的解决办法对我来说并不重要(就象在我身上一样,没有任何区别)?As you found a solution to this problem,a s I have the exactly s a me thing and Neilhem's solution doesn't work for me(a s in,
- 也许你应该接受尼尔姆的答案?
- 我周围的工作是运行的
可以将resolutions添加到bower.json文件中的对象,并指定组件名称和版本,以便在运行bower命令时自动解决冲突。这样地:
1 2 3 4 5 6 7 8 9 10 11 12 13
| {
"name":"project-x",
"private": true,
"dependencies": {
"bootstrap-sass":"~3.3.7",
"modernizr":"~2.8.3",
"jquery":"~1.11.3"
},
"devDependencies": {},
"resolutions": {
"jquery":"~1.11.3"
}
} |
你也可以运行bower install,当bower要求"合适的版本"(如果启用了交互模式),在choice前面加上!,bower会把你的选择保存到bower.json文件中。
- 您在"jquery:"~1中缺少右引号…
- 这个解决方案对我不起作用。似乎没什么区别。它是否需要鲍尔的某个版本,而我的版本正好太旧了(它是从NPM安装的,所以不管那个版本是什么)。
- @Hans尝试更新Bower运行:NPM更新-G Bower
- 很好的回答。这应该标记为正确。放!在选择之前是非常有用的。
- 添加到@neilhem答案:如果交互模式关闭,bower install将不会询问"合适的版本"。更多信息
- NPM(package.json)有类似的吗?
- @alonamir NPM使用嵌套的依赖树。更多信息请访问stackoverflow.com/questions/18641899/…
- 尼尔海姆谢谢
- 您还可以保存您的分辨率键入所选的数字+!例如:2!
使用--force-latest。
在此处输入链接说明