Grape - groovyアドオン導入を容易に java

Groovy関連のプロダクトは、Grails然り、Griffon然り、Grで始まる名前が共通しているようですが、
GrapeもGroovy関連のツールの一つです。
標準でGroovyの配布物に入っているので、あまり気にとめなかったのですが、
意外に便利そうなので、少し調べてみました。


・Grapeとは
Groovyにライブラリを追加する時、Mavenみたいにオンラインから名前で取得する仕組です。
PHPpearperlCPANみたいなものですね。
Groovyのパッケージに含まれるコマンドを実行しても良いですし、
次のサンプルのようにGroovyスクリプト中に記述しても動きます。


以下の例では、Oracle10gのJDBCドライバをダウンロードして、
その後の検索処理を実行しています。

@Grab(group='oracle', module='ojdbc14', version='10.1.0.4.0' )
def db = Sql.newInstance("jdbc:oracle:thin:@host:1521:xe", "scott", "tiger", "oracle.jdbc.driver.OracleDriver")
db.eachRow("select * from tab"){
println it;
}

社内からだと、httpプロキシを介する必要があるので、
以下のJavaオプションをつけます。

  • DproxySet=yes -DproxyHost= -DproxyPort=

mavenは使ったこと無いですが、多分こんな感じの使い方も出来るんでしょうね。
Groovy自体の実行速度等もあって、若干遅いのが玉に瑕ですが、
同じような環境をすぐに構築できるのは便利ですね。