首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >uglifym调用堆栈大小超过

uglifym调用堆栈大小超过
EN

Stack Overflow用户
提问于 2013-06-10 21:32:45
回答 2查看 5.5K关注 0票数 4

我试图使用丑陋与咕哝,以连接和缩小一些文件。我已经用过国家预防机制来install grunt-contrib-uglify了。

我的grunt.js文件中有以下内容:(我删除了其他一些匿名任务)

代码语言:javascript
复制
module.exports = function(grunt) {

  'use strict';      

    grunt.loadNpmTasks('grunt-contrib-uglify');

    uglify: {
        options: {
            sourceMap: 'app/map/source-map.js'
        },
        files: {
            'app/dist/sourcefiles.min.js': [
                'app/test_js/test.js'
              ]
        }
    }

};

然后我跑:

代码语言:javascript
复制
grunt uglify

但我不断地发现以下错误:

代码语言:javascript
复制
Warning: Maximum call stack size exceeded Use --force to continue.

如果我使用武力,任务就永远不会停止。

有人能告诉我哪里出了问题吗?我正为这件事大发雷霆。

EN

回答 2

Stack Overflow用户

发布于 2013-08-15 22:31:01

我也有同样的问题,用另一个叫做休息的Grunt插件。错误消息不明确。

代码语言:javascript
复制
Warning: Cannot read property 'message' of undefined Use --force to continue.

但是冗长的模式显示我的任务被调用了上百次。问题是我在注册任务时创建了一个“循环依赖”(导致无限循环)。

代码语言:javascript
复制
grunt.registerTask('recess', ['recess']); //does not work => cyclic dependency! 

registerTask方法的第一个参数是一个“别名任务”,必须与第二个参数中定义的任务名称不同。我是这样改正的:

代码语言:javascript
复制
grunt.registerTask('my-recess-task', ['recess']);

我运行了这个任务,调用它(在命令提示符窗口)

代码语言:javascript
复制
grunt my-recess-task

然后就没事了!

有关registerTask()方法的更多信息,参见grunt:http://gruntjs.com/api/grunt.task#grunt.task.registertask

票数 11
EN

Stack Overflow用户

发布于 2014-03-04 05:05:24

我也遇到了这个问题,我通过删除grunt.registerTask('uglify', ['uglify']);来解决这个问题。

在我解决这个问题之前,我运行了grunt uglify -v来检查发生了什么。

我发现它是因为在使用这个grunt.loadNpmTasks('grunt-contrib-uglify');的地方,它隐式地执行grunt.registerTask('uglify', ['uglify']); ^_^。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17033246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档