使用带有Grunt JS的Google Closure Compiler时,禁用report.txt的创建

时间:2013-03-05 23:42:36

标签: javascript obfuscation google-closure-compiler gruntjs

为了缩小和混淆我的JS代码,我正在尝试使用Grunt的closure-compiler插件。

我对结果非常满意,但在运行Grunt后,我在输出目录中得到project.min.js.report.txt文件。我没有找到任何options对此负责。

我看到的唯一解决方案是创建另一个删除文件的任务。是否有简单的方法可以避免再次出现此文件?

这是我的gruntfile.js内容:

module.exports = function(grunt) {
    grunt.initConfig({
        "concat": {
            js: {
                src: [
                    "js/project.js"
                ],
                dest: "js/project.all.js"
            }
        },
        "closure-compiler": {
            frontend: {
                closurePath: "path/to/gcc_jar_directory",
                js: "js/project.all.js",
                jsOutputFile: "js/project.min.js",
                maxBuffer: 500,
                options: {
                    compilation_level: "ADVANCED_OPTIMIZATIONS",
                    language_in: "ECMASCRIPT5_STRICT",
                }
            }
        },
        watch: {
            js: {
                files: ["js/project.js"],
                tasks: ["concat:js", "closure-compiler"]
            }
        }
    });

    grunt.loadNpmTasks("grunt-contrib-concat");
    grunt.loadNpmTasks("grunt-closure-compiler");
    grunt.loadNpmTasks("grunt-contrib-watch");

    grunt.registerTask("default", ["concat:js", "closure-compiler", "watch"]);
};

3 个答案:

答案 0 :(得分:1)

你现在不能hard-coded

答案 1 :(得分:1)

现在可以使用noreport选项(read more):

'closure-compiler': {
    frontend: {
        closurePath: '/var/www/closure/',
        js: 'js/file.js',
        jsOutputFile: 'js/dist/file.min.js',
        maxBuffer: 500,
        options: {
            compilation_level: 'SIMPLE_OPTIMIZATIONS',
            noreport: true
        }
    }
}

答案 2 :(得分:0)

很有趣,但这只是Grunt plugin's issue,而不是Google Closure Compiler。

为此创建了一个问题。