ant ANT_HOME環境変数設定
2007/08/09
Red Hat Enterprise Linux ES 3でのこと。
たまに ant 使ったら嵌ったのでmemo.
ant を実行すると、以下のエラーメッセージが表示された。
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher
ANT_HOMEが、/usr/share/ant になってしまっているようです。実行時に環境変数 $ANT_HOME を設定しても変化なし。
antのスクリプトを見ると、ant は、/etc/ant.conf、~/.ant/ant.conf、~/.antrc の順にファイルが存在してたら読み込むようになってました。
~/.antrcを用意して正しいANT_HOMEを設定するようにしたら、ビルドできるようになりました。
~/.antrc
ANT_HOME=/usr/local/ant
環境変数を上書きする設定ファイルって。何か違和感を感じました。configファイルをスクリプトでsourceしてるんだから当然ですが、UNIX的には、優先度は「設定ファイル < 環境変数 < コマンドラインオプション」じゃないかな。
前も同じことで嵌った記憶が。