0

Linuxシェルで次のシェルスクリプトを実行しようとすると、

cd /home/fpalma/Project/resources/yices/linux64bit/
bash
chmod a+x yices
./yices /home/fpalma/Project/out/SMT.ys > /home/fpalma/Project/out/SMT.txt

それは実行され、その yices 実行可能ファイルの出力としてテキスト ファイルを生成します。しかし、コードを使用して Java から同じシェル スクリプトを実行すると、

String command = mainGUI.PROJECT_PATH+"resources/"+"yices.sh";
process = Runtime.getRuntime().exec(command);
process.waitFor();

また

String command = mainGUI.PROJECT_PATH+"resources/"+"yices.sh";
pb = new ProcessBuilder(command);
run = Runtime.getRuntime();
Process p = pb.start();

それも実行されていますが、終了していません.Javaコンパイラ自体を終了していない限り、テキスト出力ファイルを生成していません。助言がありますか???

目標: 私の目標は、入力パラメーター ファイルを使用して Java から実行可能ファイルを実行し、その後 '>' 演算子を使用して出力テキスト ファイルを生成することです。

4

1 に答える 1

0

「コマンド」変数には完全なコマンドが含まれている必要があります。つまり、mainGUI.PROJECT_PATH+"resources/"+"yices.sh /home/fpalma/Project/out/SMT.ys > /home/fpalma/Project/out/SMT. TXT"

于 2011-07-18T13:18:51.277 に答える