欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 通過cmd 調用命令啟動tomcat的操作

 更新時間:2020年11月25日 10:41:59   作者:南風落盡  
這篇文章主要介紹了java 通過cmd 調用命令啟動tomcat的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

我們有時候為了方便,公司會做一個項目管理,便于啟動和關閉我們部署在服務器上面的項目,我這里就采用了java的方式,嗯......僅限于參考......

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);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

public static void main(String[] args) {
     Runtime rt = Runtime.getRuntime(); //返回當前應用程序的Runtime對象
     Process ps=null;//制子進程的執(zhí)行或獲取該子進程的信息
     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){//執(zhí)行成功
       System.out.println("執(zhí)行完成");
     }else{//執(zhí)行失敗
       System.out.println("執(zhí)行失敗");
     }
     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的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Spring Boot使用和配置Druid

    Spring Boot使用和配置Druid

    本篇文章主要介紹了Spring Boot使用和配置Druid,Druid號稱是Java語言中最好的數據庫連接池,并且能夠提供強大的監(jiān)控和擴展功能
    2017-04-04
  • SpringBoot+MyBatis+AOP實現讀寫分離的示例代碼

    SpringBoot+MyBatis+AOP實現讀寫分離的示例代碼

    高并發(fā)這個階段,肯定是需要做MySQL讀寫分離的。本文主要介紹了SpringBoot+MyBatis+AOP實現讀寫分離的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java發(fā)起http請求的完整步驟記錄

    Java發(fā)起http請求的完整步驟記錄

    這篇文章主要給大家介紹了關于Java發(fā)起http請求的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • Java的MyBatis框架中XML映射緩存的使用教程

    Java的MyBatis框架中XML映射緩存的使用教程

    MyBatis程序在做好XML映射后能夠有緩存的功能,這樣映射過SQL語句的配置以后就可以拿過來直接用了,這里我們來一起總結一下Java的MyBatis框架中XML映射緩存的使用教程
    2016-06-06
  • Java多線程編程綜合案例詳解

    Java多線程編程綜合案例詳解

    這篇文章將通過三個案例帶大家了解一下Java中的多線程編程,文中的示例代碼介紹詳細,對我們的學習或工作有一定的價值,感興趣的小伙伴可以了解一下
    2022-07-07
  • springboot配置過濾器和多個攔截器、執(zhí)行順序(案例詳解)

    springboot配置過濾器和多個攔截器、執(zhí)行順序(案例詳解)

    這篇文章主要介紹了springboot配置過濾器和多個攔截器、執(zhí)行順序,在文章開頭給大家介紹了過濾器配置的兩種方法,創(chuàng)建兩個攔截器,重寫方法結合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • DecimalFormat數字格式化 0和# 的區(qū)別及說明

    DecimalFormat數字格式化 0和# 的區(qū)別及說明

    這篇文章主要介紹了DecimalFormat數字格式化 0和# 的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • springboot整合websocket最基礎入門使用教程詳解

    springboot整合websocket最基礎入門使用教程詳解

    這篇文章主要介紹了springboot整合websocket最基礎入門使用教程詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 淺談Arrays.asList()方法的使用

    淺談Arrays.asList()方法的使用

    本文主要介紹了Arrays.asList()方法的使用。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • SpringBoot 配置文件中配置的中文,程序讀取出來是亂碼的解決

    SpringBoot 配置文件中配置的中文,程序讀取出來是亂碼的解決

    這篇文章主要介紹了SpringBoot 配置文件中配置的中文,程序讀取出來是亂碼的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09

最新評論