之前介绍过使用Groovy写并发程序。在OAF中使用Groovy也同样有趣,但是实际上,这里并不是直接使用Groovy语法,而是调用Groovyc编译后的class。

首先必须和EBS的java版本保持一致:

bash-3.00$ java -version
java version "1.4.2_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)

(这个版本,看着就头大)

Groovy 1.6.x 是不支持java 1.4.x的,必须在1.5版本以上,所以在不升级EBS java版本的前提下,只能使用Groovy 1.5.x (目前最新版本是1.5.7)。遗憾的是,Eclipse不支持1.4.x =_= ,所以不能直接拷贝自动编译的class文件。真是有矛就不能有盾啊~

步骤很简单:
1. 添加groovy-all-1.5.7.jar。或者解压后直接放到$JAVA_TOP目录下。
2. 在本地切换JAVA_HOME到1.4.x,编译groovy文件,生成相应的class。
3. 上传到服务器相应路径下,直接调用。

这里麻烦的就是本地编译的java环境需要切换一下,不知道有没有什么简便的方式来实现?