Ant(build.xml)でクラス名やクラスパスを指定してインスタンスを生成してメソッドを呼び出す方法をメモ。
Ant1.6から導入されたClasspathUtils.Delegateクラスはちょっと便利かも(笑)
ClasspathUtils#newInstance()も、いちいちcatchを書かなければならない余計な(?)例外をBuildException(RuntimeException)に吸収してくれるので便利だ。
それにしても、Antでデフォルトのクラスパスに入っていない外部クラスを扱うと、同じクラス名でもクラスローダーが違って別クラス扱いになってしまうことが多くて対処に疲れる(苦笑)
いろいろ試している内に、複数のtaskdef(typedef)で同一のloaderrefを指定している場合は 最初の一つだけclasspathを指定して、他のは省略できることを発見。