Bootstrap中的Grunt依赖项冲突

时间:2014-03-08 12:07:33

标签: node.js twitter-bootstrap gruntjs npm

我已经从official website下载了Bootstrap源文件,并且在使用节点npm安装项目时遇到依赖项冲突。我在我的计算机上安装了grunt 0.4.3,但某些引导程序依赖项需要0.4.0和一些0.4.1

npm install -g grunt-cli命令执行没有任何问题。这是我执行npm install命令后得到的日志:

npm ERR! peerinvalid The package grunt does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer grunt-banner@0.2.1 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-contrib-clean@0.5.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-concat@0.3.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-connect@0.6.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-copy@0.5.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-csslint@0.2.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-cssmin@0.7.0 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-contrib-jade@0.9.1 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-contrib-jshint@0.8.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-less@0.9.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-qunit@0.4.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-uglify@0.3.3 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-watch@0.5.3 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-csscomb@2.0.1 wants grunt@~0.4.2
npm ERR! peerinvalid Peer grunt-exec@0.4.3 wants grunt@~0.4
npm ERR! peerinvalid Peer grunt-html-validation@0.1.13 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-jekyll@0.4.1 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-jscs-checker@0.3.2 wants grunt@0.4.2
npm ERR! peerinvalid Peer grunt-saucelabs@5.0.1 wants grunt@~0.4.1
npm ERR! peerinvalid Peer grunt-sed@0.1.1 wants grunt@~0.4

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! cwd C:\Users\\Desktop\bootstrap-3.1.1
npm ERR! node -v v0.10.15
npm ERR! npm -v 1.3.5
npm ERR! code EPEERINVALID
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Users\\Desktop\bootstrap-3.1.1\npm-debug.log
npm ERR! not ok code 0

我正在执行these个安装步骤。

如何干净地安装此项目,没有任何错误?

6 个答案:

答案 0 :(得分:62)

我今天早上也遇到了这个问题。我最终在Bootstrap的package.json文件中更改第30行:从“~0.4.2”到“0.4.2”:

27  "devDependencies": {
...
30    "grunt" : "0.4.2"

这意味着0.4.3不再匹配依赖项规范,但这也意味着您以后不会安装新版本的grunt。这足以使事情有效,但你最终应该把它改回来(也许在你的下一个引导程序项目中不管它)。

答案 1 :(得分:11)

我遇到了同样的问题。执行以下操作:

bower install bootstrap
cd bower_components/bootstrap
npm install

导致:

npm ERR! peerinvalid The package grunt does not satisfy 
   its siblings' peerDependencies requirements!

我通过首先从bootstrap目录卸载grunt来解决这个问题

npm uninstall grunt

然后我安装了grunt 0.4.2

npm install grunt@0.4.2

这一次,npm install工作得很好

npm install

答案 2 :(得分:5)

这个问题是grunt的peerDependencies 如果您想知道这个问题,请转到此网址 http://blog.nodejs.org/2013/02/07/peer-dependencies/

这是解决问题的解决方案 step1:在根目录中打开package.json step2:找到字符串“grunt”:“~0.4.2”
step3:修改为“grunt”:“0.4.2”
step4:$ npm install

答案 3 :(得分:0)

您可能已全局安装Grunt 0.4.3但未在本地安装任何内容。

  1. 运行$ grunt --version以查找您所使用的版本(非必要步骤)。
  2. 在您打算投放项目的文件夹的根目录中创建一个package.json文件。

    {
        "name" : "MyProject",
        "version" : "0.1.0",
        "author" : "My name",
        "private" : true,
    
        "devDependencies" : {
            "grunt" : "~0.4.2"
        }
    }
    
  3. 在项目的根文件夹中运行$ npm install

  4. 完成!

    ---更新---

    您可以使用Bower为您安装Bootstrap。它使繁琐的安装变得轻而易举。 Bootstrap的Getting Started指南建议使用它!

    $ bower install bootstrap
    

    以下是可能与您相关的博文:Using Grunt + Bower with Laravel and Bootstrap

    或者您可以随时选择让Grunt管理Bootstrap的安装,并将其作为依赖项进行维护......有几个插件可以解决这个问题。

答案 4 :(得分:0)

我也有这个问题。

我使用git clone https://github.com/twbs/bootstrap.git安装了bootstrap,它从生成的引导程序目录中运行良好。

答案 5 :(得分:0)

尝试npm cache clean,然后再次尝试安装命令。