Google Closure Builder - 阻止base.js插入

时间:2014-01-13 00:04:22

标签: google-closure-compiler google-closure google-closure-library

当我使用Google Closure Builder(SIMPLE_OPTIMIZATIONS)构建我的js项目时,闭包包含已编译的js文件中的base.js文件。我不使用closure-lib。只有goog.provide和goog.require。有没有办法阻止这种插入?

2 个答案:

答案 0 :(得分:2)

goog.providegoog.require调用是Closure-library的一部分。这些定义在base.js中提供。虽然我意识到编译器会删除goog.require调用作为编译的一部分,但goog.provide有一个实际的实现(如果没有它,你的代码将无法工作)。

如果您使用ADVANCED_OPTIMIZATIONS,则删除死代码将删除base.js的所有未使用部分。但是,并非所有代码都适合使用ADVANCED_OPTIMIZATIONS编译。

您可以创建自己的base.js副本,并且只包含必要的定义。

答案 1 :(得分:1)

Kjscompiler具有忽略文件的注释,并将其视为外部文件:https://github.com/knyga/kjscompiler