自分のjar 3プログラムから独自のパラメータで起動します。 最初と2番目のプログラムは仕事をしますが、2番目のプログラムは実行しません。Javaコードからコマンドを実行しても動作しませんが、同じ文字列がcmd.exeによって手動で動作します
ここここでコード
Runtime rt = Runtime.getRuntime();
String cmdGet= "something";
try {
infolog("Executing command: " + cmdGet);
rt.exec(cmdGet);
}
catch(Exception ex){
infolog("Unable to launch program 2");
saveLog();
}
ログで
D:\Root\Module\Translators\L2Fo\SE_Draft_Update.exe -se_file="F:\Disp\Stage\DC\Ude34ea24x591ecb1c412x\M8486.dft" -input_file="F:\Disp\Stage\DC\Ude34ea24x591ecb1c412x\result\AttributeFile_M8486.txt" -log_file="F:\Disp\Stage\DC\Ude34ea24x591ecb1c412x\result\SELogg_M8486.txt"
何かのためのコマンド私は、適切なコマンドが起動見つけるが、私は、そのジョブが行われていないことがわかります。したがって、cmdプロンプトで文字列を手動でコピーすることによって動作します。
この後の3番目のプログラムも機能します。 私はなぜそれが理解できません。
何を? –
これは完全にはわかりませんが、プログラムを実行しようとしているパスに関連している可能性があります。 jarから実行するとうまく動作しない可能性があります。絶対パスでテストしてみてください – mavarazy
この方法でもっと多くのコマンドを扱えば、問題はJavaコードと関係していない可能性があります。あなたは* 'cmd' *コマンドを投稿してみませんか? –