从Java应用程序控制批处理文件的过程

时间:2011-09-09 10:10:14

标签: java batch-file

我创建了一个批处理文件,该文件使用属性文件执行jar文件:

@echo off REM Windows bat script java -Xmx256M -Djava.util.logging.config.file=log.properties -jar Archive.jar

我想创建一个Java应用程序,其中包含执行此批处理文件的代码(可行),但不显示正在执行的进程的DOS窗口。此外,当应用程序结束时,此过程的过程也应该终止。这可行吗? 提前谢谢!

2 个答案:

答案 0 :(得分:1)

你可以使用javaw.exe而不是java.exe:没有控制台窗口:http://download.oracle.com/javase/1.4.2/docs/tooldocs/windows/java.html

答案 1 :(得分:0)

使用Java的Runtime类应该适合您:

Runtime runtime = Runtime.getRuntime();
runtime.exec("/somepath/script.bat");

也可以使用更复杂的方法,例如用于提交环境变量。您也可以使用自JavaSE 1.5以来可用的ProcessBuilder。它提供了许多Runtime输出重定向中没有的功能。