Closure编译器跳过文件

时间:2011-01-12 06:21:30

标签: javascript google-closure google-closure-compiler

我有一个shell脚本,它收集页面上的所有.js文件,并使用闭包编译器对它们进行汇编。但是,我不想通过编译器优化任何特定的js文件。例如,我有编译fileA.js,fileB.js和fileC.js的命令。如何记录跳过fileB.js但仍按正确顺序将其放在输出文件scripts.min.js中?因此,fileA.js和fileC.js将使用SIMPLE_OPTIMIZATION进行优化,并且不会触及fileB.js。我可以在文件本身的注释中放置一个关键字,跳过这个文件吗?

java -jar compiler.jar --js=fileA.js --js=fileB.js --js=fileC.js --js_output_file=scripts.min.js

2 个答案:

答案 0 :(得分:2)

如果我在此了解您的意图,您可以考虑单独处理要缩小的每个文件,然后将连接作为单独的步骤执行。在伪代码中:

minify fileA.js
minify fileC.js
cat fileA.js fileB.js fileC.js >scripts.min.js

答案 1 :(得分:1)

没有关键字可以放在任何范围内说“忽略我”。 nullptr有正确的建议。在我们的项目中,我们创建了一些简单的预处理注释,并使用它们来控制流程。但是,如果要在一次传递中执行此操作,则只能在缩小代码之前或缩小代码之后忽略并包含文件。因此,nullptr的解决方案是唯一的解决方案。请记住使用extern文件,以便可变重命名(而不是重命名)正常工作。