私は通常、外部コマンドラインプログラムを実行するためにjava.lang.ProcessBuilderとjava.lang.Processを使用しますが、実行と終了のコマンドでうまく動作します。たとえば、これは作業ディレクトリに引数を指定して「MYPROGRAM」「myArg」を実行します:Javaからの対話型コマンドラインアプリケーションの実行
List<String> commandLine = new ArrayList<String>();
commandLine.add("myProgram");
commandLine.add("myArg");
ProcessBuilder builder = new ProcessBuilder(commandLine);
builder.redirectErrorStream(true);
Process process = builder.start();
をしかし、私は、スクリプトまたは対話型の入力を持っていたプログラムか何かを実行したいと言う(それは、複数の入力のために私を促しました開始後)。上記のコードと同様のコードでJavaでこれを行うことはできますか、別の方法が必要ですか?それとも私に助けてくれるライブラリがありますか?
stdinとstdoutはSystem.inとSystem.outを意味しますか? – 11684
@ 11684はい、回答を更新しました。 –
ありがとう!これはかなりしばらく探していました。 – dantiston