2/13 に http://dist.codehaus.org/groovy/distributions/ から Groovy の 最新版 JSR-05 がダウンロードできるようになりました。


早速、BkGroovy の動作確認をしてみたところ、意図した動きをしてくれている用です。


特に JSR-05 で groovy.lang.GroovyClassLoader クラスがどのように変更されるかが気がかりだったのですが、コードもすっきりとなっていて、古いバージョンの BkGroovy1.0 でも、また以前のように動くようになってくれていました。
1.0.1 の変更は、あまり納得できる変更ではなかったので、BkGroovy 1.0 のコードに戻そうと考えているところです。


JSR-04 でも確認していたのですが、一点気になる点が残っていて、それは ログの設定を FINER 以上に設定すると、NullPointerException が発生することです。

情報: java.lang.NullPointerException
  at org.codehaus.groovy.runtime.MetaClassHelper.getClassName(MetaClassHelper.java:729)
  at org.codehaus.groovy.runtime.MetaClassHelper.logMethodCall(MetaClassHelper.java:904)
  at groovy.lang.MetaClassImpl.invokeStaticMethod(MetaClassImpl.java:472)
  at org.codehaus.groovy.runtime.Invoker.invokeStaticMethod(Invoker.java:184)
  at org.codehaus.groovy.runtime.InvokerHelper.invokeStaticMethod(InvokerHelper.java:119)
  at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeStaticMethod
      (ScriptBytecodeAdapter.java:115)
  at Sample01.<init>(Sample01.groovy)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
      (DelegatingConstructorAccessorImpl.java:27)
  at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
  at java.lang.Class.newInstance0(Class.java:308)
  at java.lang.Class.newInstance(Class.java:261)
  at org.becky.bkj.groovy.BkGroovy.loadScripts(BkGroovy.java:38)
  at org.becky.bkj.groovy.BkGroovyFactory.createEventHandler(BkGroovyFactory.java:61)
  at org.becky.bkj.BkJava.loadConfig(BkJava.java:78)

というログが出力されます。(Sample01 のところはスクリプト毎に異なります。また、一部意図的に改行している行があります。)
この点は現在、調査中です。