我是Grunt的新手,我在使用新插件设置项目时遇到了问题。
到目前为止,我有:
这一切都很棒,但是我想使用不同的uglify插件,所以仍然在'测试'目录,我跑:
npm install uglify-js --save-dev
由于我没有使用全局标志,插件会按预期下载到test / node_modules目录,存在于test / node_modules / uglify-js。 package.json文件已使用附加依赖项进行更新:
"uglify-js": "^2.4.15"
然后我编辑Gruntfile.js,添加
grunt.loadNpmTasks('uglify-js');
并改变
grunt.registerTask('default', ['jshint', 'qunit', 'concat', 'uglify']);
到
grunt.registerTask('default', ['concat', 'uglify-js']);
我跑
npm install
确保下载所有依赖项,但现在当我运行grunt任务时出现此错误:
Local Npm module "uglify-js" not found. Is it installed?
Warning: Task "uglify-js" not found. Use --force to continue.
任何人都知道我做错了什么?
Mac OS X 10.8.5,节点v0.10.32
答案 0 :(得分:2)
如果您想使用UglifyJS whit grunt,则应使用grunt-contrib-uglify。安装时使用:
npm install grunt-contrib-uglify --save-dev
在Gruntfile.js
:
grunt.loadNpmTasks('grunt-contrib-uglify');
并运行你的任务:
grunt uglify
有关详细信息,请参阅docs。
答案 1 :(得分:1)
我在Windows 7上遇到了类似的问题。我通过使用以下模块创建了一个package.json解决了这个问题。
"grunt": "~0.4.5",
"grunt-contrib-jshint": "~0.10.0",
"grunt-contrib-nodeunit": "~0.4.1",
"grunt-contrib-uglify": "~0.5.0"
运行npm install,它开始在该目录中工作。