中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在java中使用cmd命令啟動tomcat

發布時間:2020-11-25 14:15:57 來源:億速云 閱讀:405 作者:Leah 欄目:開發技術

如何在java中使用cmd命令啟動tomcat?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

具體方法如下:

public static void main(String args[]) throws IOException {
    String exec = "C:/software/apache-tomcat-8.5.24/bin/startup.bat";
    Runtime runtime = Runtime.getRuntime();
    runtime.exec(exec);
  }

如上所述,如果我們執行這段代碼,那么我們的tomcat是啟動不了的,我們用cmd試一下,請看下面,會出現錯誤信息,(在bin目錄的父目錄下調用除外)

如何在java中使用cmd命令啟動tomcat

打開用于啟動Tomcat的批處理文件startup.bat,首先判斷CATALINA_HOME環境變量是否為空,如果為空,就將當前目錄設為CATALINA_HOME的值。

接著判斷當前目錄下是否存在bin\catalina.bat,如果文件不存在,將當前目錄的父目錄設為CATALINA_HOME的值。

根據Tomcat安裝目錄的層次結構,最后CATALINA_HOME的值被設為Tomcat的安裝目錄。如果環境變量CATALINA_HOME已經存在,則通過這個環境變量調用bin目錄下的“catalina.bat start”命令。

于是了解到兩個信息,一是Tomcat啟動時,需要查找CATALINA_HOME這個環境變量,如果在Tomcat的bin目錄下調用startup.bat,Tomcat會自動并正確設置CATALINA_HOME;二是執行startup.bat命令,實際上執行的是“catalina.bat start”命令

如果要想在任意目錄下都能啟動Tomcat,就需要設置CATALINA_HOME環境變量,你可以將CATALINA_HOME添加到Windows 系統的環境變量中,其值就是Tomcat的安裝目錄。

添加CATALINA_HOME環境變量的過程和前述添加JAVA_HOME環境變量的過程是一樣的。如果你不想在系統的環境變量中添加,也可以直接在startup.bat文件中進行設置

set CATALINA_HOME=C:\software\apache-tomcat-8.5.24

我這里采用將 CATALINA_HOME 添加到 startup.bat 文件中,shutdown.bat 同理。如果找不準位置,可以將設置CATALINA_HOME環境變量的這句代碼放到文件的第一行。

如何在java中使用cmd命令啟動tomcat

在這里設置后,不論是通過cmd在其它目錄下啟動還是通過java代碼啟動tomcat都將無比絲滑......

注意:如果將該java程序打成war包放在tomcat下運行,則無法通過該程序啟動其他tomcat,原因暫時未知......當然,可將其打包成jar包通過cmd運行程序,直接裸奔,則程序可成功運行,打開其他的tomcat......

補充知識:使用java命令執行bat文件(重啟本地指定位置的Tomcat)

使用下面的代碼執行指定位置的bat文件

public static void main(String[] args) {
     Runtime rt = Runtime.getRuntime(); //返回當前應用程序的Runtime對象
     Process ps=null;//制子進程的執行或獲取該子進程的信息
     try {
      ps=rt.exec("cmd.exe /c start C:\\Users\\qiang\\Desktop\\restartTomct.bat");//這里的C:\\Users\\qiang\\Desktop\\restartTomct.bat 換成你自己的bat文件的絕對路徑
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
     int i=ps.exitValue();
     if(i == 0){//執行成功
       System.out.println("執行完成");
     }else{//執行失敗
       System.out.println("執行失敗");
     }
     ps=null;
  }

=================================================
bat文件的名稱為 restartTomct.bat
=================================================

@echo log location

@echo 下面的c代表進入的是盤符c 下 ,也就是Tomcat所在盤符的位置,(需要修改為自己的盤符)

c:

@echo 進入Tomcat的bin目錄 (需要修改為自己的Tomcat的bin目錄的位置)

cd C:\Users\qiang\Desktop\apache-tomcat-7.0.53\apache-tomcat-7.0.53\bin\
call shutdown.bat
@echo wait for  10 sec........
ping -n 10 127.0.0.1

call startup.bat

echo ----------- >> C:\Users\qiang\Desktop\apache-tomcat-7.0.53\tomcat_restart.log
exit

看完上述內容,你們掌握如何在java中使用cmd命令啟動tomcat的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

樟树市| 茌平县| 吉安县| 普定县| 平江县| 滦平县| 江津市| 鹤山市| 锦屏县| 凯里市| 西畴县| 沙雅县| 仁怀市| 武鸣县| 抚顺县| 海城市| 安西县| 梁平县| 南平市| 阿图什市| 宝兴县| 汉川市| 分宜县| 石泉县| 贺州市| 望都县| 德保县| 克拉玛依市| 佛山市| 黔东| 东平县| 中方县| 江川县| 英吉沙县| 左权县| 葫芦岛市| 鄂州市| 桂林市| 扶沟县| 淮阳县| 吉林市|