Bower在运行grunt发球后抛出jquery“未注入”警告

时间:2014-02-19 20:44:23

标签: javascript jquery json yeoman bower

我最近不得不克隆一个项目并重建bower包。我相信jQuery已更新,现在正在发出警告:

警告:
    Please go take a look in "app/bower_components/jquery" for the file you need, then manually include it in your file.

我已经完成了这件事。并且每个标志都正常工作。但是,每当我grunt serve警告仍然被抛出?

jquery was not injected in your file.

如何删除此错误?并且这会导致一个笨拙的构建错误吗?我确定这个警告是无害的,但是看到它真的很难过。

main .bower.json

{
  "name": "jordan",
  "version": "0.0.0",
  "dependencies": {
    "angular": "1.2.6",
    "json3": "~3.2.6",
    "es5-shim": "~2.1.0",
    "angular-resource": "1.2.6",
    "angular-cookies": "1.2.6",
    "angular-sanitize": "1.2.6",
    "angular-route": "1.2.6",
    "jquery-ui": "~1.10.3"
  },
  "devDependencies": {
    "angular-mocks": "1.2.6",
    "angular-scenario": "1.2.6"
  }
}

enter image description here

.bower.json for jquery

{
  "name": "jquery",
  "version": "2.1.0",
  "ignore": [
    "**/.*",
    "build",
    "speed",
    "test",
    "*.md",
    "AUTHORS.txt",
    "Gruntfile.js",
    "package.json",
    "bower.json"
  ],
  "dependencies": {
    "sizzle": "1.10.16"
  },
  "devDependencies": {
    "requirejs": "~2.1.8",
    "qunit": "~1.12.0",
    "sinon": "~1.7.3"
  },
  "keywords": [
    "jquery",
    "javascript",
    "library"
  ],
  "homepage": "https://github.com/jquery/jquery",
  "_release": "2.1.0",
  "_resolution": {
    "type": "version",
    "tag": "2.1.0",
    "commit": "cac43f3ef791b7e68c1917a734fb92e04450c111"
  },
  "_source": "git://github.com/jquery/jquery.git",
  "_target": ">=1.6",
  "_originalSource": "jquery"
}

3 个答案:

答案 0 :(得分:12)

您可以解决此问题,更改项目的bower.json并覆盖一些包含问题的包

"overrides": {
  "jquery": {
    "main": "./dist/jquery.js"
  }
}

您可以在https://github.com/bower/bower/issues/585

中详细了解相关信息

但是,看起来当前版本的JQuery正在玩Bower规则。

答案 1 :(得分:4)

正如有关Github相关问题的解释: https://github.com/stephenplusplus/grunt-bower-install/issues/55

  

这不是grunt-bower-install的错误 - 遗憾的是,jQuery没有遵循Bower的规则。此工具无法使用未指定主要属性的Bower程序包。与其他任何不包含的软件包一样,解决方案是手动在HTML文件中包含对文件的引用,例如好的文件。天

对不起,我刚才遇到同样的问题:(

答案 2 :(得分:0)

一般情况下,如果您收到此错误,那是因为您使用的任何bower组件的作者都没有在组件中包含bower.json文件或者没有定义"主" bower.json文件夹中的属性。如果正在主动维护组件,则应该打开github问题,要求在组件中使用正确的bower.json文件。这是一个真实世界的例子......

https://github.com/CreateJS/SoundJS/issues/76