减少关闭编译器的jvm启动时间

时间:2013-03-14 15:10:29

标签: shell jvm google-closure-compiler

上下文:与git持续集成

我有这个简单的shell脚本:

#!/bin/sh

files=`find $1 -type f -name "*.js"`

for i in $files;
do
  echo "closure compile: $i"
  java -client -jar /var/closure-compiler/compiler.jar --js $i --js_output_file $i --compilation_level SIMPLE_OPTIMIZATIONS
done

post-receive

之后在git checkout -f挂钩中调用

基本上,我想压缩(但不能组合)工作目录中的所有javascript文件(实际上是网站根目录)。

问题

每个java显然会启动一个自己的JVM,大约需要3秒钟,而编译器本身(启动时)只需要几分之一秒。如果我有10个js文件,这是30秒的等待时间。在this could be actually positive for me期间,我想尽量缩短时间。

我查看了--module参数,它可以让我定义“多个输出文件”,但它将它们全部放在同一个目录中。

我愿意接受建议。

1 个答案:

答案 0 :(得分:2)

人们在Nailgun取得了很大的成功: http://www.martiansoftware.com/nailgun/

保持JVM加载。