我收到与此人相同的错误消息:
grunt-contrib-watch causing Maximum call stack size exceeded
跑步" grunt watch"在这个grunt文件上:
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
banner: '//Copyright (c) 2014 <%= pkg.author %>. All Rights Reserved.\n'
},
build: {
files: {
"Static/JavaScript/<%= pkg.name %>/AppLogic.Min.js": ["Static/JavaScript/<%= pkg.name %>/AppLogic.js"]
}
}
},
less: {
production: {
options: {
cleancss: true
},
files: {
"Static/Css/<%= pkg.name %>/Style.Min.css": ["Static/Css/<%= pkg.name %>/Style.css"]
}
}
},
watch: {
scripts: {
files: ["Static/JavaScript/<%= pkg.name %>/AppLogic.js"],
tasks: ["uglify"]
},
styles: {
files: ["Static/Css/<%= pkg.name %>/Style.css"],
tasks: ["less"]
}
}
});
grunt.loadNpmTasks("grunt-contrib-less");
grunt.loadNpmTasks("grunt-contrib-uglify");
grunt.loadNpmTasks("grunt-contrib-watch")
grunt.registerTask("default", ["uglify", "less"]);
grunt.registerTask("watch", ["watch"]);
};
看看答案,我的问题似乎与另一个问题有不同的原因,但肯定是错误的。
在没有参数的情况下运行grunt运行正常,因此&#34; uglify&#34;和&#34;少&#34;似乎是正确构建的。
运行&#34; grunt watch:scripts&#34;或者&#34; grunt watch:styles&#34;也会导致错误。
有什么想法吗?
PS:grunt / grunt-cli本地安装到我的应用程序,而不是全局安装在我的机器上。不要认为解决这个问题会有所作为,但为了完整起见......
此外,在错误弹出之前,我多次收到以下警告:
(节点)警告:检测到递归process.nextTick。这将在下一版本的节点中中断。请使用setImmediate进行递归递延。
答案 0 :(得分:0)
啊,问题不是我的“监视”任务结构,而是这一行:
grunt.registerTask("watch", ["watch"]);
以与参数不同的方式命名任务修复了问题,如下所示:
grunt.registerTask("watch_", ["watch"]);
对以下答案的肯定,对不起重复: