前言:
jikes 是由ibm开发出来的开放源码的java编译器。它具有非常快速的编译速度和高度的兼容性。jikes和rmv用于研究基础虚拟机设计问题的java程序的执行。它将能为研究和学术机构提供提供具有较强伸缩性的原型测试床,能在大量不同的设计上做试验。
jikes可以取代javac的作用,将.java文件编译成.class文件文件。
jikes 是性能优良的 Java 编译器,性能要比 Sun 的 javac 或者 tools.jar 好的多。
jikes 的 Linux 版本可以很好地支持字符集转换,
但是从 sourceforge 下载的 jikes 的 Windows 版本因为没有和 iconv 做连接,
因此不支持字符集转换。解决这个问题很容易:重新编译!
开源软件就是把 power 完全交在你的手里。
这里是按照 jikes FAQ 的指导重新编译的最新的 jikes 1.22 for Windows,大家可以直接下载了使用。
jikes 能做什么?
javac 能做的所有事情 jikes 全部都能做,它能:
1、在 Ant 创建文件中替代 javac 增量编译 java 源代码。
可以极大地提高编译的速度,源文件越多,你的感受就越明显。
2、在 Tomcat/Jetty 中替代 tools.jar 来编译 JSP 文件。
注意,tools.jar 是随 JDK 分发的,按照其 License,
你无权随你们的产品分发 JDK 或者其中的内容,
你只能分发 JRE,因此理论上你必须让用户自己去下载并安装 JDK。
有了 jikes,你就可以随你的产品分发,省去了这一步的麻烦。
使用:
在http://jikes.sourceforge.net下载Jikes最新版
下载后将得到的bin文件夹解压至C:\Jikes1.22中
配置环境变量:
JIKES_HOME:C:\jikes1.22;
PATH:C:\jikes1.22\bin;
(我不爱使用%%之类的代替,复制起来很方便,而且很直观)
windows+R后运行cmd,测试下
键入jikes Test.java
报错如下:
Found 2 system errors:
*** Semantic Error: You need to modify your classpath, sourcepath, bootclasspath
, and/or extdirs setup. Jikes could not find package "java.lang" in:
.
d:\java
IBM和SUN到底不是一家,Jikes找不到JAVA基础类的jar包
解决:在环境变量CLASSPATH中加入C:\Java\jdk1.6.0_12\jre\lib\rt.jar;
再测试OK,已经可以使用Jikes完全的替代javac了。