【问题标题】:Strange angular version resolving bug with bower install奇怪的角度版本解决了凉亭安装的错误
【发布时间】:2013-09-20 17:25:26
【问题描述】:

我正在尝试更新我的 angular 版本,但我认为 bower 疯了。

我的部门:

    "dependencies": {
    "underscore":"*",
    "momentjs":"~2.2.1",
    "bootstrap": "~3.0.0",
    "jquery": "~1.9.1",
    "jquery.cookie": "*",
    "jquery-ui": "~1.10.3",
    "jquery-file-upload": "*",
    "angular": "~1.2.0-rc.2",
    "angular-route": "~1.2.0-rc.2",
    "angular-resource": "~1.2.0-rc.2",
    "angular-animate": "~1.2.0-rc.2",
    "angular-cookies": "~1.2.0-rc.2",
    "angular-i18n": "~1.2.0-rc.2",
    "angular-bootstrap" : "*",
    "ng-grid": "*",
    "highcharts": "*",
    "highcharts-ng": "*"
},

"devDependencies": {
    "angular-mocks": "~1.2.0-rc.2",
    "angular-scenario": "~1.2.0-rc.2"
}

这里重要的是:所有 Angular 模块都是 1.2.0-rc.2 版本

但是在做的时候

bower install

结果如下:

Unable to find a suitable version for angular, please choose one:
1) angular#1.0.8 which resolved to 1.0.8 and has angular-scenario#1.2.0-rc.2 as dependants
2) angular#1.2.0-rc.2 which resolved to 1.2.0-rc.2 and has angular-animate#1.2.0-rc.2, angular-cookies#1.2.0-rc.2, angular-mocks#1.2.0-rc.2, angular-resource#1.2.0-rc.2, angular-route#1.2.0-rc.2, angular-scenario#1.2.0-rc.2 as dependants
3) angular#~1.2.0-rc.2 which resolved to 1.2.0-rc.2 and has tael-web as dependants
4) angular#>=1 which resolved to 1.2.0-rc.2 and has angular-bootstrap#0.6.0 as dependants
5) angular#>=1.0.4 which resolved to 1.2.0-rc.2 and has highcharts-ng#0.0.2 as dependants

bower 似乎认为 angular-scenario 1.2.0-rc2 需要 angular 1.0.8 ... ???

这实际上是错误的:https://github.com/angular/bower-angular-scenario/tree/v1.2.0-rc.2

凉亭.json:

{
  "name": "angular-scenario",
  "version": "1.2.0-rc.2",
  "main": "./angular-scenario.js",
  "dependencies": {
    "angular": "1.2.0-rc.2"
  }
}

我在这里缺少什么?我能做些什么来解决这个问题?要明确:我不想使用交互式冲突解决方法,因为这是在远程 CI 上出现的。我只想强调 * 如何将角度场景 1.2.0-rc2 假设为角度 1.0.8 作为依赖项......

谢谢

【问题讨论】:

  • 我有一个类似的配置,我得到:angular#~1.2.0-rc.2 which resolved to 1.2.0-rc.2 and has myproject as dependants。更奇怪的是。
  • 在这种情况下,有问题的库是 ember。我可以按数字 2,bower 将安装第二个选项,ember#1.5.1。

标签: angularjs bower


【解决方案1】:

尝试将此部分添加到您的 bower.json:

"dependencies": {
  ...
},
"resolutions":{
  "angular": "1.2.0-rc.2"
}

注意:分辨率中的角度版本与依赖项中的版本相同。

【讨论】:

  • bower 本地缓存实际上很疯狂。 Juste 修复决议是解决问题的正确方法。 (一年后接受答案,但仍然!)
【解决方案2】:

我在最新的凉亭版本中遇到了同样的问题。

您可以按照 Bower 输出提示进行操作:Prefix the choice with ! to persist it to bower.json 从提供的选项中选择一个。然后您的bower.json 将更新一个额外的 "resolutions": { ... } 块,然后问题将得到解决。

【讨论】:

    【解决方案3】:

    代替:

    "angular": "~1.2.0-rc.2"

    试试:

    "angular": "=1.2.0-rc.2"

    可能不是正确的方法,但它解决了我项目中的类似问题。

    【讨论】:

    • 您有最新版本的 bower 吗?我刚刚尝试了您的文件,一切都解决了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 1970-01-01
    • 2017-03-14
    • 2015-08-15
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多