GroovyでWeblogicのバージョンを出す方法
WebLogicのバージョンを知る方法
http://d.hatena.ne.jp/masanobuimai/20041008#1097228281
にpnuts版がのっていたので groovyでどうするのかちょっとやってみた。
pnutsの方が手軽そうだ。
>rem groovysh にはクラスパスを指定するオプションがないので >set CLASSPATH=%BEA_HOME%\weblogic700\server\lib\weblogic.jar >groovysh Lets get Groovy! ================ Version: 1.0-beta-7 JVM: 1.4.2_05-b04 Type 'exit' to terminate the shell Type 'help' for command help groovy> import weblogic.*; groovy> println version.getReleaseBuildVersion(); groovy> go 7.0.4.0 groovy> weblogic.version.methods.name.each { if(it =~ "^get") { print "${it}:" ; println evaluate("weblogic.version.${it}()") } } groovy> go getBuildVersion:WebLogic Server 7.0 SP4 Tue Aug 12 11:22:26 PDT 2003 284033 getPLInfo:[WebLogic Platform, 7.0] getReleaseBuildVersion:7.0.4.0 getVersions:WebLogic Server 7.0 SP4 Tue Aug 12 11:22:26 PDT 2003 284033 getWebServerReleaseInfo:WebLogic Server 7.0 SP4 Tue Aug 12 11:22:26 PDT 2003 284 033 getClass:class java.lang.Class
最後の例はたぶん pnuts でもできるのだろう。
groovyでももっと簡潔が書き方があるのかも。
evaluteにはimport文が効かない。。。
evalの方がやっぱ短くてメソッド名としていいね。
groovy> import weblogic.* groovy> println evaluate "version.getReleaseBuildVersion()" groovy> go No such property: version for class: Script1 groovy> println evaluate "weblogic.version.getReleaseBuildVersion()" groovy> go 7.0.4.0 groovy> eval = evaluate groovy> println eval"weblogic.version.getReleaseBuildVersion()" groovy> go 7.0.4.0