我使用FFmpeg导出视频。
我从我的java代码运行exe文件。
INDIRECT()
如果在FFmpeg中发生任何错误,进程将返回exitValue而不是0以告诉我出现了问题。
但是当文件或目录包含禁用字符时,它将是一个"没有这样的文件或目录" ffmpeg中的错误,但它不会向java程序返回任何内容,因此程序会粘贴在process.isAlive部分。
是否有更好的方法来检测流程是否已完成?
答案 0 :(得分:1)
您可以直接使用ProcessBuilder和Process类而不是Runtime.getRuntime()来更好地控制Process.exec()
此外,除非是拼写错误,否则您需要process.isAlive()
而不是process.isAlive
(这是一个方法调用,返回一个布尔值)。