我正在我的 Java 应用程序中构建命令行字符串(例如“winword.exe FinalReport.doc”)。我想执行命令并放手:我不想/不需要等待结果(最大可能是:它是否正确启动,但这是可选的)并且应用程序需要在我的 Java 应用程序终止时继续运行.
我查看了 Runtime.getRuntime().exec()
和 Apache Commons_Exec。两者都控制启动的应用程序(使用公共(public)资源和回调显然更可取),但这不是我需要的。我想念什么?
我是否需要调用 Windows/Linux/Mac API 来启动一个独立的应用程序?
最佳答案
尝试使用过程!这就是我在我的应用程序中使用它的方式:
Process process = new ProcessBuilder()
.command(convert, image.name, "-thumbnail", "800x600>", bigsize.name)
.directory(image.parentFile)
.redirectErrorStream(true)
.start()
我猜,你可以这样使用:
Process process = new ProcessBuilder()
.command("winword.exe", "FinalReport.doc")
.directory(new File("C:/"))
.redirectErrorStream(true)
.start()
关于java - 从 Java 执行命令而不是等待结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7011925/