如何在java代码中调用Tomcat startup.bat



Tomcat startup.bat在Java代码中使用Process调用,这将创建一个新的CMD窗口,而我的其余Java代码将不会执行。我需要启动一个新线程来执行此操作吗?但即便如此,我仍然无法获得 br。

Runtime runtime = Runtime.getRuntime();
Process process;
BufferedReader br = null;
try {
    process = runtime.exec(command);
    runtime.gc();
    String line = null;
    String content = "";
    br = new BufferedReader(new 
    InputStreamReader(process.getInputStream()));
    while ((line = br.readLine()) != null) {
        content += line + "rn";
    }
    System.out.println(content);
} catch (IOException e) {
        System.out.println(e);
} finally {
    if (br != null) {
        br.close();
    }
}

Tomcat的startup.bat调用catalina.bat start,这总是打开一个新窗口。

改为尝试catalina.bat run,这将在当前窗口中启动 Tomcat。

更多细节可以在这里和这里找到。

最新更新