使用Google Closure Compiler Application在一个文件中压缩所有文件.js

j3j*_*3j3 12 javascript compression google-closure-compiler

我想.js在命令行中使用Google Closure Compiler 将所有文件压缩到一个文件中的同一目录中.

对于一个文件,它是:

java -jar compiler.jar --js test.js --js_output_file final.js
Run Code Online (Sandbox Code Playgroud)

但我没有在文档中找到如何在final.js没有写入最后一个压缩文件的情况下将我的其他文件放在最后?

我想要这样的东西:

java -jar compiler.jar --js --option *.js --js_output_file final.js
Run Code Online (Sandbox Code Playgroud)

我可以或者必须执行一个程序,它将所有文件添加到文件中并在压缩之后?谢谢你能帮助我!

Orb*_*bit 14

java -jar path/to/closure-compiler/build/compiler.jar \ 
--js input_one.js \ 
--js input_two.js \ 
... \ 
--js_output_file compiled_output.js 
Run Code Online (Sandbox Code Playgroud)


Ade*_*lin 7

我尝试过Orbits的回答,但它并没有真正起作用,也许我使用的版本是更新的版本.我使用的命令是:

java -jar compiler.jar --js file1.js file2.js file3.js  --js_output_file --js_output_file compiled_output.js. 
Run Code Online (Sandbox Code Playgroud)

  • 我用过`java -jar lib/compiler.jar --js \`find ./src/*.js \` - js_output_file build/out.cjs` (4认同)

Raf*_*ski 6

假设您已经在Mac上安装了带有Homebrew的Closure Compiler,您还可以连接所有文件,然后将它们传递给Closure(这也应该有用java -jar,但我还没有验证它):

cat $(ls scripts/*.js) | closure-compiler --js_output_file main.js
Run Code Online (Sandbox Code Playgroud)