我用以下命令卸载了grunt。
npm uninstall -g grunt
然后我再次使用以下命令安装grunt。
npm install -g grunt-cli
访问以下链接: https://npmjs.org/package/grunt-html
我想使用上面的grunt插件
但是当我运行grunt命令时,它会给我以下错误:
D:\nodeJS\node_modules\grunt-html>grunt
grunt-cli: The grunt command line interface. (v0.1.6)
Fatal error: Unable to find local grunt.
If you're seeing this message, either a Gruntfile wasn't found or grunt
hasn't been installed locally to your project. For more information about
installing and configuring grunt, please see the Getting Started guide:
http://gruntjs.com/getting-started
答案 0 :(得分:173)
所有问题都在gruntjs.com上得到了很好的解释。
请注意,安装grunt-cli不会安装grunt任务运行器! grunt CLI的工作很简单:运行grunt的版本 已安装在Gruntfile旁边。这允许多个版本 咕噜声同时安装在同一台机器上。
因此,在项目文件夹中,您需要安装(最好)最新的grunt版本:
npm install grunt --save-dev
选项--save-dev
会将{{1>}作为 dev-dependency 添加到 package.json 。这样可以轻松地重新安装依赖项。
答案 1 :(得分:20)
您必须在项目文件夹中安装grunt
创建你的package.json
$ npm init
为此项目安装grunt,它将安装在node_modules/
下。 --save-dev会将此模块添加到package.json
$ npm install grunt --save-dev
然后创建gruntfile.js并运行
$ grunt
答案 2 :(得分:4)
我认为您必须在您的package.json
文件中添加grunt。请参阅this link。
答案 3 :(得分:4)
我在Windows grunt上遇到了这个问题,因为我在64位Windows操作系统上安装了32位版本的Node。当我专门安装64位版本时,它开始工作。
答案 4 :(得分:1)
我今天在Windows 32位上遇到了同样的问题,节点为0.10.25,grunt为0.4.5。
我跟着dongho's answer,只需几步。 以下是我用来解决错误的步骤:
1)创建你的package.json
$ npm init
2)为此项目安装grunt,这将安装在node_modules /下。 --save-dev会将此模块添加到package.json
中的devDependency$ npm install grunt --save-dev
3)然后使用如下示例代码创建gruntfile.js
:
module.exports = function(grunt) {
grunt.initConfig({
jshint: {
files: ['Gruntfile.js', 'src/**/*.js', 'test/**/*.js'],
options: {
globals: {
jQuery: true
}
}
},
watch: {
files: ['<%= jshint.files %>'],
tasks: ['jshint']
}
});
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.registerTask('default', ['jshint']);
};
此处,src/**/*.js
和test/**/*.js
应该是您在项目中使用的实际JS文件的路径
4)运行npm install grunt-contrib-jshint --save-dev
5)运行npm install grunt-contrib-watch --save-dev
6)运行$ grunt
注意:当您需要像concat,uglify等常见软件包时,您需要通过npm install
添加这些模块,就像我们安装jshint并在步骤4&amp; 5
答案 5 :(得分:1)
如果你是一个存在的项目,也许应该执行npm install。
答案 6 :(得分:1)
这为我解决了这个问题。我错误地使用以下命令安装了grunt:
sudo npm install -g grunt --save-dev
,然后在项目文件夹中运行以下命令:
npm install
这导致问题作者看到错误。 然后,我使用以下方法卸载了grunt:
sudo npm uninstall -g grunt
删除了node_modules文件夹。并使用以下命令重新安装grunt:
npm install grunt --save-dev
,然后在项目文件夹中运行以下命令:
npm install
出于某种奇怪的原因,当您使用-g全局安装grunt然后将其卸载时,node_modules文件夹会保留一些阻止grunt本地安装到项目文件夹的东西。