Windows プラットフォームで Java プログラムを作成しています。特定のファイルを zip アーカイブに圧縮する必要があります。ProcessBuilder を使用して、新しい 7zip プロセスを開始しています。
ProcessBuilder processBuilder = new ProcessBuilder("7Z","a",zipPath,filePath);
Process p = processBuilder.start();
p.waitFor();
問題は、完了後に 7zip プロセスが終了しないことです。必要なzipファイルを作成しますが、その後はそこにハングアップします。これは、waitFor()
呼び出しが返されず、プログラムが動かなくなることを意味します。修正または回避策を提案してください。