実行可能なjarファイルをコマンド実行しその戻り値を取得したくて下記プログラムを書きました。 ところがprocess.exitValue() のところで process has not exited というエラーを起こしてしまいます。原因はお分かりになりますでしょうか。 String command = "java -jar test.jar test; Process process = Runtime.getRuntime().exec(command); System.out.println("▼▼▼実行中のコマンド=" + command); //int no = process.waitFor(); //exec()が非同期実行であるため実行結果が返ってくるまで待つ System.out.println("▼▼▼コマンドの実行完了"); BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream())); String line = null; while ( (line = in.readLine())!=null ) { line = in.readLine(); System.out.println(line); } System.out.println("★★★コマンドの戻り値=" + process.exitValue()); if(process.exitValue() != 0) { process.destroy(); } in.close(); } } catch(Exception e) { if( process != null ) { process.destroy(); } e.printStackTrace(); }
↧