'grunt'命令不做任何事情

时间:2014-01-05 18:18:17

标签: javascript configuration gruntjs

我正在为我的新应用关注咕噜getting started guide,但我遇到了一些麻烦。

这是我的Gruntfile.js

module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    uglify: {,
      build: {
        src: 'js/*.js',
        dest: 'build/*.min.js'
      }
    }
  });

  // Load the plugin that provides the "uglify" task.
  grunt.loadNpmTasks('grunt-contrib-uglify');

  // Default task(s).
  grunt.registerTask('default', ['uglify']);

};

这是我的package.json

{
  "name": "My App",
  "version": "0.0.0",
  "description": "",
  "author": "",
  "license": "N/A",
  "devDependencies": {
    "grunt": "~0.4.2",
    "grunt-contrib-jshint": "~0.8.0",
    "grunt-contrib-uglify": "~0.2.7"
  }
}

我安装了grunt-cli软件包,并运行npm install以获取本地版本的grunt和contrib库。

但是当我运行gruntgrunt uglify时,没有任何事情发生。

$ grunt
$ grunt uglify
$

知道我错过了什么或者什么可能导致这种行为?

编辑:我刚刚安装了mocha,我也遇到了同样的问题:没有输出。可能我的节点或npm安装有问题

2 个答案:

答案 0 :(得分:30)

所以看起来这是一个环境设置问题。我安装了一个名为node的ubuntu软件包以及nodejs,它阻止了通过npm安装的软件包。运行以下命令可以解决问题。

sudo apt-get --purge remove node

答案 1 :(得分:10)

我遇到了同样的问题。 Grunt没有回应。没有输出显示。 删除节点和安装nodejs-legacy对我有用。

通过以下方式删除节点:

sudo apt-get --purge remove node

并通过以下方式安装legacy:

sudo apt-get install nodejs-legacy