1.項(xiàng)目結(jié)構(gòu)
![](/d/20211016/f71af67191098a7bc3f65d6155bfe94b.gif)
2.CallTomcat.java
package com.calltomcat.test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CallTomcat {
public static void main(String[] args) {
//String command = "E:\\apache-tomcat-7.0.76\\bin\\startup.bat";//啟動(dòng)tomcat命令
//String command = "E:\\apache-tomcat-7.0.76\\bin\\tomcat7w.exe";//啟動(dòng)Tomcat命令,僅限windows版本,無彈框
String command = "E:\\apache-tomcat-7.0.76\\bin\\shutdown.bat";//關(guān)閉tomcat命令
CallTomcat callTomcat = new CallTomcat();
try {
callTomcat.callCommand(command);
} catch (IOException e) {
System.out.println("執(zhí)行命令時(shí)出錯(cuò):" + e.getMessage());
}
}
/**
* 執(zhí)行命令
*
* @throws IOException
*/
private void callCommand(String command) throws IOException {
Runtime runtime = Runtime.getRuntime();//返回與當(dāng)前的Java應(yīng)用相關(guān)的運(yùn)行時(shí)對(duì)象
//指示Java虛擬機(jī)創(chuàng)建一個(gè)子進(jìn)程執(zhí)行指定的可執(zhí)行程序,并返回與該子進(jìn)程對(duì)應(yīng)的Process對(duì)象實(shí)例
Process process = runtime.exec(command);
runtime.gc();//運(yùn)行垃圾回收器
String line = null;
String content = "";
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
while((line = br.readLine()) != null) {
content += line + "\r\n";
}
System.out.println(content);
}
}
3.效果預(yù)覽
3.1 執(zhí)行開啟命令
![](/d/20211016/4061137ee26ba1c060c0b880e1c005c8.gif)
3.2 執(zhí)行關(guān)閉命令
![](/d/20211016/ee82e60f8334c8e8b786c7b77b1493f8.gif)
4.常見錯(cuò)誤
執(zhí)行代碼后可能出現(xiàn):
The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
此時(shí)需設(shè)置環(huán)境變量:
![](/d/20211016/1c2c0060e3a236e4403cef23e472078c.gif)
本人設(shè)置后運(yùn)行依然報(bào)錯(cuò),但是將電腦注銷一下再次運(yùn)行即可。
5.說明
若是執(zhí)行startup.bat會(huì)自動(dòng)出現(xiàn)彈框,但是若執(zhí)行tomcat7w.exe(根據(jù)tomcat版本有所不同)則不會(huì)出現(xiàn)彈框。--僅windows版本,其他版本無.exe文件。
總結(jié)
以上所述是小編給大家介紹的Java開啟/關(guān)閉tomcat服務(wù)器的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!