我正在寻找一个编译器,在运行时(Ahead-of-Time编译)之前将Java字节码转换为与平台无关的C代码.
然后,我应该能够使用标准C编译器将C代码编译为目标平台的可执行文件.我知道这种方法仅适用于不经常修改的某些Java应用程序.
那么Java-to-C编译器可用?
我可以建议一个名为JCGO的工具,它是C语言翻译器的Java源代码.如果需要转换字节码,则可以通过某种工具(例如,JadRetro + Jad)对类文件进行反编译,并将源文件传递给JCGO.该工具一次翻译java程序的所有类,并生成C文件(每个类一个.c和.h),可以进一步编译(通过第三方工具)为高度优化的本机代码.目标平台.Java泛型尚不支持.支持AWT/Swing和SWT.