如何使用全局安装的grunt-html?

时间:2012-08-26 13:04:02

标签: node.js npm gruntjs

我想使用grunt-html任务来检查我的HTML文件。

我使用npm install grunt-html在本地安装任务,并在grunt.js中使用它,如下所示:

module.exports = function (grunt) {

    grunt.loadNpmTasks('grunt-html');

    grunt.initConfig({

        htmllint:{
            all:['*.html']
        },

    });

};

现在我想全局安装grunt-html任务

不幸的是,在删除本地grunt-html节点模块并安装全局 grunt后,无法加载任务。在运行grunt htmllint时,我得到了:

>> Local Npm module "grunt-html" not found. Is it installed?

如果我从grunt.loadNpmTasks('grunt-html');文件中删除grunt.js,我会收到:

 Task "htmllint" not found. Use --force to continue. 

所以我的问题是如何使用grunt-html全局安装

1 个答案:

答案 0 :(得分:13)

根据grunt.loadNpmTasks的文档,gruntjs目前不支持从loadNpmTasks加载全局安装的grunt模块:

  

此插件必须通过npm本地安装,并且必须相对于grunt.js gruntfile。

当然,如果你真的坚持全局安装它,那么黑客就是从你的本地ln -s目录创建一个符号链接(node_modules)到你的全局node_modules/grunt-html目录。 / p>

如果您正在进行模块开发,另一种方法是使用不太受欢迎的npm link命令,该命令允许您在本地安装系统中其他位置的模块(有关使用信息,请参阅npm help link )。

但是,这两种方法都不允许您在全局范围内真正安装grunt-html软件包。