我想使用grunt-html
任务来检查我的HTML文件。
我使用npm install grunt-html
在本地安装任务,并在grunt.js
中使用它,如下所示:
module.exports=函数(grunt){grunt.loadNpmTasks('grun-html');grunt.initConfig({htmllint:{all:['*.html']},});}
现在我想全局安装grunt-html
任务。
不幸的是,删除本地grunt-html
节点模块并全局安装后,grunt
无法加载任务。运行grunt htmllint
时,我得到:
>未找到本地Npm模块"grunt html"。它安装好了吗
如果我从grunt.js
文件中删除grunt.loadNpmTasks('grunt-html');
,我会得到:
未找到任务"htmllint"。使用--force继续
所以我的问题是如何在全局中使用已安装的grunt-html
?
gruntjs目前不支持从loadNpmTasks
加载全局安装的grunt模块,根据grunt.loadNpmTasks
:的文档
这个插件必须通过npm在本地安装,并且必须相对于grunt.js gruntfile。
当然,如果你真的坚持在全局范围内安装它,破解方法是创建一个从本地node_modules
目录到全局node_modules/grunt-html
目录的符号链接(ln -s
)。
如果您正在进行模块开发,另一种选择是使用未被充分理解的npm link
命令,该命令允许您在本地安装系统上其他位置存在的模块(有关用法信息,请参阅npm help link
)。
然而,这两种方法都不允许您在全局范围内真正安装grunt-html
包。