VS2015 中的 bower 错误“bower requirejs extra-resolution 不必要的分辨率:requirejs#~2.2.0”
Posted
技术标签:
【中文标题】VS2015 中的 bower 错误“bower requirejs extra-resolution 不必要的分辨率:requirejs#~2.2.0”【英文标题】:bower error in VS2015 "bower requirejs extra-resolution Unnecessary resolution: requirejs#~2.2.0" 【发布时间】:2016-11-18 14:24:16 【问题描述】:我正在尝试玩 durandal,但收到此错误:
错误:
bower requirejs extra-resolution 不必要的分辨率:requirejs#~2.2.0
bower.json
"name": "asp.net",
"private": true,
"dependencies":
"underscore": "~1.8.3",
"bootstrap": "~3.3.6",
"bootswatch": "3.3.6",
"jquery": "2.2.3",
"jquery-validation": "1.15.0",
"jquery-validation-unobtrusive": "~3.2.6",
"angular": "1.5.7",
"angular-route": "~1.5.7",
"durandal": "~2.1.0",
"requirejs": "~2.2.0"
没有运气找出它的含义或我需要做些什么来修复它。 RequireJS 已将其添加到我的 lib 文件夹中,所以我想知道这是否不是真正的错误?
【问题讨论】:
【参考方案1】:Durandal 已经依赖于 requirejs,见 here
"name": "Durandal",
"version": "2.2.0",
"dependencies":
"jquery": "^1.9.1",
"knockout": "^3.4.0",
"requirejs": "^2.1.11",
"requirejs-text": "^2.0.12"
所以要么从你的 bower.json 中删除 "requirejs": "~2.2.0" ,或者你可以在你的 bower.json 文件中添加分辨率并指定组件名称和版本,请参阅here。
【讨论】:
嗯,这很有趣。我不再遇到问题,也没有显示问题的项目可用,所以我无法真正确认。我想我并没有真正意识到这个信息试图传达什么,但你说的是有道理的。当我的 bower 文件中还包含其他依赖项(如 jquery)时,为什么编译器只会抱怨 require? 您的其他组件没有版本要求不匹配,例如所有需要的 jquery 2.2.3 但是从你发布的内容来看,(我很可能误读了这一点,bower 对我来说很新) - Durandal 需要大于 1.9.1 的 jquery,并且需要大于 2.1.11。在上面的 bower.json 中,我使用的是 jquery 2.2.3,并且需要 ~2.2.0。我假设 ~2.2.0 的意思是“该版本周围的东西。所以它们不应该都比 durandal 需要的版本更大吗? "requirejs": "^2.1.11" 告诉 bower 它只能接受 PATCHES 中 2.1.11 或更高版本的任何版本(版本 # 中的第三位),例如2.1.12、2.1.13 等等。版本 2.2.xxx 是不可接受的,因为它是次要更新而不是补丁更新。您在 MINOR 版本中要求 requirejs v2.2.0 或更高版本,例如2.3.x 与 Durandal 的 2.1.11+x 要求相冲突。这是凉亭中版本控制的很好的解释***.com/questions/19030170/… 对于 jQuery,检查你的 bower.json 是否已经包含分辨率部分?例如。 "决议": "jquery": ">=1.8"以上是关于VS2015 中的 bower 错误“bower requirejs extra-resolution 不必要的分辨率:requirejs#~2.2.0”的主要内容,如果未能解决你的问题,请参考以下文章
Bower 中的 Visual Studio 2015 还原包啥也不做
Grunt,NPM和Bower之间的区别(package.json vs bower.json)