このメソッドを使用してRuntime.getRunTime()
、JavaでWebサービスのexeを呼び出しています。使用せずにこれを呼び出すと正常にProcess.wait()
動作しますが、メソッドでこれを使用するとwait()
プロセスがハングし、Tomcatを再起動する必要があります。
なぜこれが起こるのか誰かがわかりますか?
このメソッドを使用してRuntime.getRunTime()
、JavaでWebサービスのexeを呼び出しています。使用せずにこれを呼び出すと正常にProcess.wait()
動作しますが、メソッドでこれを使用するとwait()
プロセスがハングし、Tomcatを再起動する必要があります。
なぜこれが起こるのか誰かがわかりますか?
これは、プログラム「waitsFor()」が外部プロセスの実行を終了する理由を示しています。
現在、外部プログラムが stdout と stderr を要求している可能性がありますが、それはあなたのプログラムがブロックしています。これにより、永続的な待機またはデッドロックと呼ばれるものが発生しています。詳しくはこちらをご覧ください。