JavaプログラムからAntを実行しようとしています。これは動作します:絶対パスのないJavaでコマンドラインプログラムを実行
// Compile project
ProcessBuilder pb =
new ProcessBuilder("/usr/local/Cellar/ant/1.9.6/libexec/bin/ant", "-f", pathToProject + "build.xml");
Process p = pb.start();
p.waitFor();
しかし、このプログラムは自分以外のマシンで使用されますので、私はむしろ、このようなProcessBuilderをインスタンス化したい:私のMac端末上
new ProcessBuilder("ant", "-f", pathToProject + "build.xml");
ant -f build.xml
ものの作品を、私のプログラムの出力に上記のコードを置きますjava.io.IOException: Cannot run program "ant": error=2, No such file or directory
。
Antが配置されているProcessBuilderをプログラムでどのように表示できますか?このプログラムは、OS XとおそらくUbuntu上で動作します。
注:この質問はAnt固有ではありません。他のコマンドラインツールも呼び出すには、ProcessBuilderを使用する必要があります。