Index > AntからJythonを使いたい
Thu, July 16, 2009

AntからJythonを使いたい

Antのscriptタスクでjythonを動かせないものか?

O'REILLY Book の Ant では、 scriptタスクを使って、JavaScriptをAntから使う方法が紹介されている。 そのあたりのページを見ると、jython.jar を使うと、scriptタスクからJython使える風な 情報があるのだが、実際にやってみてもうまく動かなかった。(たぶん私の設定が悪いのだろうが。)

ならば・・・ということで、先日調べた svn の実行方法と同じように jythonも単なるjavaプログラムなのだから、javaタスクを使って実行すればいいじゃないかと。

Ant から Javaタスクを使って Jython を実行する

jythonをインストールしたディレクトリの jython コマンドを参考に以下のように build.xml を設定して 実行したところ、簡単な Jython コードを動かすことができました。

jython コマンドでは、-Dpython.home などの追加のオプションも起動時に渡しているようなので、 そのあたりもきちんとしないと問題が生じるかもしれません。

build.xml

<?xml version="1.0" encoding="UTF-8" ?>

<project default="main" >

    <target name="main" >
        <java 
            classname="org.python.util.jython" dir="." fork="true">
          <arg value="hello.py"/>
          <classpath>
            <pathelement location="lib/jython.jar" />
            <pathelement location="lib/jdom.jar" />
          </classpath>
        </java>
    </target>

</project>

※lib/jython.jar を配置しておくことをお忘れなく。

hello.py

build.xml から実行する jython コード。

print "Hello world."

実行

$ ant

main:
     [java] Hello world.

BUILD SUCCESSFUL

テストに使用した環境

 Twitter
follow me on Twitter
 Categories