我需要从 Java 代码重新启动 Tomcat 服务器。我是 Java 初学者。我尝试通过cmd来做到这一点。我需要停止 tomcat 然后重新启动它。我尝试这段代码。它仅适用于两个命令(一个 &&),如果我添加第三个命令(行 exec("cmd/c start cmd.exe ...)
中的两个 &&),它就不起作用.
PS:如果存在其他使用 Java 代码重新启动 Tomcat 的方法,请告诉我
public class restart_tomcat {
public static void main(String[] args) throws SDKException, IOException {
Runtime rt = Runtime.getRuntime();
try {
// Process process1 = Runtime.getRuntime().exec("cmd /c start cmd.exe /K " + cmd1);
rt.exec("cmd /c start cmd.exe /K \"cd C:\\\\Program Files (x86)\\\\SAP BusinessObjects\\\\tomcat\\\\bin&&startup.bat\"");
System.out.println("succesful");
} catch (IOException e) {
e.printStackTrace();
}
}
}
最佳答案
很高兴知道为什么需要从 java 代码启动/停止 Tomcat,这是作业还是其他什么?在现实世界中,我们有初始化脚本,只需从终端运行它们即可启动/停止它。您可以使用非常简单的 shell 脚本 (yourscript.sh) 自动执行此操作并添加以下内容:
#!/bin/bash
<path_to_tomcat>/bin/shutdown.sh
<path_to_tomcat>/bin/startup.sh
如果您确实需要通过 Java 代码执行此操作,您可以在以下资源之一中找到答案:
关于java - 如何使用JAVA代码执行多个命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61034772/