开发编译器门槛很高,Java 的编译器数的上的也就下面几种:
1. javac : 不用介绍了,也是最常见的。
2. GCJ (Compiler for Java) : GNU 项目比较常用,绝大多数 Linux 发行版的默认 Java 编译器。
3. ECJ (Eclipse Compiler for Java) : 大名鼎鼎的 eclipse 内置的编译器。
如果你不想在 eclipse 中使用 ECJ,想使用 javac 或者是 GCJ,就需要使用 Ant,在build.xml中指定编译器,全局替换掉 eclipse 默认的 ECJ 好像比较困难。关于这个问题的讨论见:
http://dev.eclipse.org/newslists/news.eclipse.tools/msg17370.html
正是因为有了 ECJ ,所以即使你只安装了 JRE,也可以在 eclipse 中进行编译,它基本上算是为 eclipse 量身定做,所以效率不错。
网上没找到有关它们性能权威的分析,只有几个不太权威的测试:
http://blog.mikiobraun.de/2008/08/benchmarking-javac-vs-ecj-on-array.html
http://www.jroller.com/andyl/entry/sun_javac_vs_eclipse_ecj
对我来说,上面任何一种编译器都是值得尊敬的杰作,足够满足我日常的开发需要。