JavaNativeCompiler
JavaNativeCompiler Official Site
SourceForge Download Page
很多工具都宣称能把Java应用程序编译成native binary.有些是从原代码开始编译,例如
GNU GCJ;有些是从Java bytecode开始翻译,例如
NativeJ等等,这类可以算是与JIT(just in time compilation)相对应,于是叫AOT(ahead of time compilation);还有一些只是生成启动JVM用的本地可执行程序,例如
install4j.
GCJ是GNU Compiler Collection的一部分,当然是免费开源的咯.运行时是libgcj,包含
Boehm GC和一个bytecode解释器;其采用的Java类库则基于
GNU Classpath.这是将Java应用程序转化为本地程序的好工具之一,虽然生成的native binary还是很大...
NativeJ和install4j等工具都不错,很可惜并不免费.以前我在做课程项目时用过trial版的install4j,感觉很好,但要让我为这样的软件而pay的话那还是不用算了.
于是对Java SE 5的应用程序,还有另外一个选择可以把Java bytecode转换成本地可执行程序:
JavaNativeCompiler.基本上是GCJ的一个壳.免费使用的话,除了会出现一个"demo"的splash screen外似乎没什么别的限制(除非用了Sun的AWT/Swing).这玩意编译出来的binary image同样是很大;也不奇怪,毕竟是基于GCJ的.问题是这单个编译器就已经能称得上"巨大"了...Windows上的compiler要98M左右 \o/
不过说真的,与其用这个(JNC)我宁可直接用GCJ了...
或者说,因为我自己用的机器总是会装足够的JVM,我自己根本用不着用这个转换程序...||