Grunt 未启动:“>> ReferenceError:未定义 grunt”
Posted
技术标签:
【中文标题】Grunt 未启动:“>> ReferenceError:未定义 grunt”【英文标题】:Grunt doesn't launch : ">> ReferenceError: grunt is not defined" 【发布时间】:2013-12-13 08:54:18 【问题描述】:我是 NodeJS 和 Grunt 的新手,我正在努力完成这项工作。 这是我得到的:
$> grunt
Loading "Gruntfile.js" tasks...ERROR
>> ReferenceError: grunt is not defined
Warning: Task "default" not found. Use --force to continue.
Aborted due to warnings.
这是我的 Gruntfile:
module.exports = function(grunt)
grunt.initConfig(
compass:
dist:
options:
config: 'config/config.rb'
);
;
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.registerTask('default', 'compass');
这是我的 package.json :
"name": "tests",
"version": "0.0.0",
"description": "Grunt Tests",
"main": "index.js",
"devDependencies":
"grunt": "~0.4.2",
"grunt-contrib-compass": "~0.6.0",
"grunt-contrib-watch": "~0.5.3",
"grunt-cli": "~0.1.11"
,
"scripts":
"test": "grunt compass"
,
"repository":
"type": "git",
"url": "https://github.com/Bertrand31/grunttests.git"
,
"keywords": [
"Grunt",
"NodeJS",
"NPM",
"SASS",
"Compass"
],
"author": "Bertrand Junqua",
"license": "GPL",
"bugs":
"url": "https://github.com/Bertrand31/grunttests/issues"
,
"homepage": "https://github.com/Bertrand31/grunttests"
哦,我正在 Debian Wheezy 上运行它。
如果您有任何想法,请告诉我。 非常感谢大家!
【问题讨论】:
您是否从与 Gruntfile 相同的目录运行命令? 我也不认为这有什么不同。但我认为你的注册任务应该是这样的:grunt.registerTask('default', ['compass']);
.
【参考方案1】:
您在未定义 grunt
的范围内调用 grunt.loadNpmTasks
和 grunt.registerTask
。您需要在 module.exports 函数中调用它们:
module.exports = function(grunt)
grunt.initConfig(
compass:
dist:
options:
config: 'config/config.rb'
);
// Call these here instead, where the variable grunt is defined.
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.registerTask('default', 'compass');
;
【讨论】:
以上是关于Grunt 未启动:“>> ReferenceError:未定义 grunt”的主要内容,如果未能解决你的问题,请参考以下文章
当主机更改源时,grunt karma 对 vagrant 进行测试 grunt/karma 未检测到它