此处使用windows下做演示,如在linux环境下调用相应的.sh文件即可
1、创建restart.bat
@echo off
%将restart.bat放置在startup.bat的同级目录中, 否则 此处call shutdown.bat 和 call startup.bat应增加相应的目录%
call shutdown.bat
call startup.bat
exit
2、使用Runtime.getRuntime().exec()方法执行restart.bat
String url = restart.bat的放置目录;
//tomcat路径
String tomcat = System.getProperty("catalina.home");
//java路径
String java = System.getProperty("java.home");
//D:\JDK\jdk1.8.0_74\jre 只要 D:\JDK\jdk1.8.0_74
java = java.substring(0, java.lastIndexOf("\\"));
//环境
String[] envp = { "JAVA_HOME=" + java,
"CATALINA_HOME=" + tomcat };
//执行命令
Runtime.getRuntime().exec("cmd /c start " + url, envp, new File(tomcat + "\\bin"));