2014-01-05 126 views
12

我正在關注我的新應用程序的grunt getting started guide,但我遇到了一些問題。'grunt'命令不會執行任何操作

這是我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" 
    } 
} 

我已經安裝了咕嚕-CLI包,我已經跑NPM安裝以獲得本地版本grunt和contrib庫。

但是,當我運行gruntgrunt uglify什麼也沒有發生。

$ grunt 
$ grunt uglify 
$ 

任何想法我錯過了什麼或者什麼可能會導致此行爲?

編輯:我剛剛安裝了摩卡,我也遇到了同樣的問題:沒有輸出。也許有一個問題,我的節點或npm安裝

+0

我猜/ JS /不爲空,對不對? –

+0

@SergiuParaschiv這是正確 –

+0

嘗試使用'--verbose'選項來查看你得到的。另外,運行'grunt --version'只是爲了確保你得到一個適當的grunt執行(應該只打印Grunt cli版本號)。 – jakerella

回答

30

所以它看起來像這是一個環境設置問題。我有一個名爲node的ubuntu軟件包以及nodejs,它阻止通過npm安裝的軟件包正常工作。運行以下命令修復了問題。

sudo apt-get --purge remove node 
+2

感謝您發現這個解決方案!只是打這個相同的問題。相當難調試的東西,甚至不會拋出一個錯誤... – cboettig

+3

我也不得不這樣做: sudo ln -s/usr/bin/nodejs/usr/bin/node – Tyguy7

10

我有同樣的問題。 Grunt沒有迴應。沒有輸出顯示。 刪除節點並安裝nodejs-legacy已爲我工作。

刪除節點通過:

sudo apt-get --purge remove node 

,並通過安裝遺產:

sudo apt-get install nodejs-legacy 
+0

可能值得一提的是,Ubuntu的安裝來有一個名爲「節點」的包不是「節點js」。包含的節點通常不需要,因此可以安全地移除。不過你不需要安裝nodejs-legacy。 'sudo apt-get install nodejs'應該可以工作! – RutledgePaulV

相關問題