无法加载咕噜声,不知道我做错了什么或我需要做什么

时间:2014-10-20 17:09:53

标签: terminal gruntjs

我正在尝试使用grunt运行我的第一个项目。当我尝试在命令行中运行grunt时,我遇到了这样的错误/警告:

Traviss-MacBook-Pro-2:GRUNT Travis$ grunt compass
>> Local Npm module "grunt-contrib-jshint" not found. Is it installed?
>> Local Npm module "grunt-contrib-qunit" not found. Is it installed?
Warning: Task "compass" not found. Use --force to continue.

Aborted due to warnings.

我安装了jshint和qunit,所以我对于解决此问题的下一步操作感到迷茫。 非常感谢任何帮助,谢谢。

这是我的grunt.js文件

module.exports = function(grunt) {

  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
     concat: {
     options: {
        separator: ';'
     },
    dist: {
       src: ['src/**/*.js'],
       dest: 'dist/<%= pkg.name %>.js'
     }
   },
   uglify: {
     options: {
       banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
     },
     dist: {
       files: {
        'dist/<%= pkg.name %>.min.js': ['<%= concat.dist.dest %>']
       }
     }
   },
   qunit: {
     files: ['test/**/*.html']
   },
   jshint: {
     files: ['Gruntfile.js', 'src/**/*.js', 'test/**/*.js'],
     options: {
       // options here to override JSHint defaults
       globals: {
         jQuery: true,
        console: true,
        module: true,
         document: true
      }
    }
   },
    watch: {
      files: ['<%= jshint.files %>'],
      tasks: ['jshint', 'qunit']
    }
 });

  grunt.loadNpmTasks('grunt-contrib-uglify');
  grunt.loadNpmTasks('grunt-contrib-jshint');
  grunt.loadNpmTasks('grunt-contrib-qunit');
  grunt.loadNpmTasks('grunt-contrib-watch');
  grunt.loadNpmTasks('grunt-contrib-concat');

  grunt.registerTask('test', ['jshint', 'qunit']);

  grunt.registerTask('default', ['jshint', 'qunit', 'concat', 'uglify']);

 };

1 个答案:

答案 0 :(得分:1)

您可能没有在grunt任务表单中使用qunit和jshint的'grunt-contrib'模块。您应该可以查看npm ls | grep contrib

之类的内容

我建议你在项目中运行:

npm install grunt-contrib-jshint --save-dev

npm install grunt-contrib-qunit --save-dev 

我会期望其他一些grunt.loadNpmTasks()指定的模块也会窒息,所以我有点惊讶更多的错误没有发生。

对于“警告:任务”指南针“未找到”,gruntfile中没有“指南针”目标(正如qunitwatch等),所以这样做感。您可能要添加“指南针”任务以使用该名称执行操作,或者在命令行上指定另一个目标grunt(或省略任何特定目标以执行默认['jshint', 'qunit', 'concat', 'uglify']任务)。