jikes 是一个速度远快于 javac 的 java 编译器.
整合 ant 的方法:
- 设置环境变量 JIKESHOME 为 jikes 的路径
- 设置 ANT_OPTS=-Dbuild.compiler=jikes
- 将 jikes 路径添加到系统 PATH 中
注意区分大小写. 然后在所有的ant任务就默认使用 jikes 了, 如果你想在单个工程中使用 ant, 就不要添加 ANT_OPTS 环境变量, 只需要修改 build.xml 中 javac 标签中的 compiler 为 jikes, 例如:
<javac destdir="${build.dir}" debug="true" deprecation="false" optimize="false" failonerror="true" compiler="jikes">
jikes 中可以设置如下值:
- classic ( JDK 1.1 或者 1.2 标准 ) – 也可以使用 javac1.1 和 javac1.2 作为别名.
- modern ( JDK 1.3/1.4/1.5 标准 ) – javac1.3, javac1.4, javac1.5 可以作为别名.
- jikes
- jvc - 微软的那个编译器
- kjc - kopi 编译器
- gcj - GCC 中的 gcj 编译器
- sj - Symantec 的 java 编译器
- extJavac 根据现有 jvm 决定使用 classic 或者 modern 模式
另外 jikes 中还有几个附加的属性设置:
build.compiler.emacs=false build.compiler.fulldepend=false build.compiler.pedantic=false build.compiler.warnings=true
build.compiler.warnings 这个属性设置最好在 javac 标签中使用 nowarn 属性. 保存为 build.properties 文件, 在 build.xml 中这样调用:
<property file="build.properties"/>
就可以使用 jikes 的附加属性了。 整合 tomcat 的方法:
先如上设置 JIKESHOME 和系统 PATH ,在 web 应用的 web.xml 中添加:
<servlet> <servlet-name> jsp </servlet-name> <servlet-class> org.apache.jasper.servlet.JspServlet </servlet-class> <init-param> <param-name>jspCompilerPlugin</param-name> <param-value>org.apache.jasper.compiler.JikesJavaCompiler</param-value> </init-param> <load-on-startup> -1 </load-on-startup> </servlet> <servlet-mapping> <servlet-name> jsp </servlet-name> <url-pattern> *.jsp </url-pattern> </servlet-mapping>
如果想要在所有 WEB 应用中使用 jikes, 则设置环境变量 CATALINA_OPTS=-Dbuild.compiler.emacs=true, 然后打开 ${TOMCAT_HOME}/conf/web.xml, 找到:
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>
改为:
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>compiler</param-name> <param-value>jikes</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>
出处:CoolCode.CN
责任编辑:moby
◎进入论坛网络编程版块参加讨论
|