我有一个运行执行命令行参数的外部程序的java程序。在做了一些搜索之后,我发现有些人正在运行.bat文件来做这件事。 这是哪种情况下最好的方法?从Java执行外部应用程序或运行bat文件
- 执行命令
- 执行bat文件
而且我不知道任何人在经历有关运行在Java外部应用程序, 他们来这的问题并是否有任何无法解决的问题?
感谢,
我有一个运行执行命令行参数的外部程序的java程序。在做了一些搜索之后,我发现有些人正在运行.bat文件来做这件事。 这是哪种情况下最好的方法?从Java执行外部应用程序或运行bat文件
而且我不知道任何人在经历有关运行在Java外部应用程序, 他们来这的问题并是否有任何无法解决的问题?
感谢,
使用Apache EXEC库。 http://commons.apache.org/exec/
它试图解决此处提到的问题: http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
文章描述了所有的Runtime.exec()抛出你的陷阱..
可以使用exec方法
Process p = Runtime.getRuntime().exec("myFile.exe");
如果你想等待它完成,你可以做
p.waitFor();
http://stackoverflow.com/questions/506154/runtime-class-in-java and http://stackoverflow.com/questions/480433/launch-jvm-process-from-a-java-application-use-runtime-exec/480463#480463 – Azodious 2012-01-17 13:52:51