我正在使用闭包编译器来缩小和连接我的脚本,我想使用该ADVANCED_OPTIMIZATIONS
标志来获得更多的缩小魔法。但是,当我使用此标志并且不起作用时,我创建的一些脚本会发出警告。我不想通过一堆较小的选项传递一个标志,然后看看哪个打破了它,也许我不会得到 100% 的尺寸减小,但更接近。
是否有任何较小的单个标志可以传递给 google 闭包编译器选项以打开'ADVANCED_OPTIMIZATIONS'
标志的各个功能?
我正在使用闭包编译器来缩小和连接我的脚本,我想使用该ADVANCED_OPTIMIZATIONS
标志来获得更多的缩小魔法。但是,当我使用此标志并且不起作用时,我创建的一些脚本会发出警告。我不想通过一堆较小的选项传递一个标志,然后看看哪个打破了它,也许我不会得到 100% 的尺寸减小,但更接近。
是否有任何较小的单个标志可以传递给 google 闭包编译器选项以打开'ADVANCED_OPTIMIZATIONS'
标志的各个功能?
最简洁的答案是不”。
SIMPLE_OPTIMIZATIONS
和之间的跳跃ADVANCED_OPTIMIZATIONS
可能看起来很大,但实际上归结为两个主要问题:
对于这两个项目,编译器需要相同的信息集才能正确执行此操作。它需要:
通过了解这两条信息,编译器既可以安全地重命名公共/全局属性和变量,也可以完全消除从未使用过的代码。
迁移ADVANCED_OPTIMIZATIONS
可能需要做很多工作,但它也可以在代码大小和性能方面产生巨大的回报。帮助该过程的提示:
您可以使用 java api 来调整编译器优化。基本上你自定义命令行:
http ://blog.bolinfest.com/2009/11/calling-closure-compiler-from-java.html
或者,您可以创建编译器的自定义构建并使用用于高级模式的选项:
参见:applyFullCompilationOptions
在:CompilationLevel.java