Node.js 在本地安装节点Grunt

Node.js 在本地安装节点Grunt,node.js,build-automation,portable-executable,gruntjs,Node.js,Build Automation,Portable Executable,Gruntjs,我正在修改我的构建系统,我已经阅读了node.js和grunt是一个很好的方法。我也没用过,现在有点麻烦 问题是我想建立一个可移植的构建环境,我可以将它包含在我的项目的版本控制中(也许这是不可能的)。让node.js和npm正常工作并不困难。但是,我看到的关于安装grunt的每一条指令都说要使用npm的-g标志,npm将全局安装grunt。因为我想要一个完全可移植的环境,所以我尝试不使用它,但我无法让grunt工作 我是否遗漏了什么,或者我试图做的事情不可行 Grunt最近被分为一个项目本地依赖

我正在修改我的构建系统,我已经阅读了node.js和grunt是一个很好的方法。我也没用过,现在有点麻烦

问题是我想建立一个可移植的构建环境,我可以将它包含在我的项目的版本控制中(也许这是不可能的)。让node.js和npm正常工作并不困难。但是,我看到的关于安装grunt的每一条指令都说要使用npm的
-g
标志,npm将全局安装grunt。因为我想要一个完全可移植的环境,所以我尝试不使用它,但我无法让grunt工作

我是否遗漏了什么,或者我试图做的事情不可行

Grunt最近被分为一个项目本地依赖项(
Grunt
)和一个命令行启动器(
Grunt cli
)。后者应该在全球范围内安装

作为一个额外的提示,请确保您可以将构建带到任何地方:确保在使用
npm install
时使用
--save
--save dev
参数将所有依赖项保存在
package.json
中。更多信息:

请参阅:

本地安装grunt cli

如果您喜欢使用惯用的Node.js方法开始项目(
npm install&&npm test
),请使用npm install grunt cli--save-dev在本地安装grunt cli。然后向package.json中添加脚本以运行相关的grunt命令:
“scripts”:{“test”:“grunt test”}
。现在,npm测试将使用本地安装的
/node\u modules/.bin/grunt
可执行文件来运行grunt命令

要阅读有关npm脚本的更多信息,请访问npm文档:

.

您可以通过调用以下命令使用本地grunt,而无需全局(-g)安装grunt cli:

node节点\u模块/grunt cli/bin/grunt--version
当然,首先您需要在本地项目中安装它,并且grunt版本大于0.3;例如:

npm install grunt-cli
npm install grunt@0.4.5
或者将它们都添加到packages.json并调用

npm install  

当您无法在全局范围内安装任何软件包时,这也会有所帮助,正如我在

中所述。以下是命令行代码,它将在您的项目文件夹中安装最新版本的Grunt,并将其添加到您的devdependency中:

npm install grunt --save-dev
gruntplugins和其他节点模块也可以这样做。如下面安装JSHint任务模块的示例所示:

npm install grunt-contrib-jshint --save-dev
在“插件”页面上签出当前可用的gruntplugins,以便在项目中安装和使用


完成后,请确保在项目中提交更新的package.json文件

谢谢你提供的有用信息。我确实看过你提到的文件。我注意到他们仍然需要在全球范围内安装
grunt cli
。有什么办法可以解决吗?没什么需要解决的。grunt cli所做的一切就是启动嵌入到项目中的grunt版本。认为这是惯例。根据需要,这不会降低项目的可移植性。您可以在本地安装grunt cli,并使用npm脚本启动工作流。请看页面底部:我最终使用ant来代替这个项目。我本想让grunt工作,但我负担不起更多的项目时间,我能够让ant在我的环境中运行得更快。