2015-12-03 13 views
0

在init.d或systemctl腳本中啓動tomcat之前刪除webappswork內容是一種好的做法嗎?在從init系統啓動之前清除tomcat工作和webapps

事情是這樣的:

... 
case "$1" in 
    start) 
      rm -rf $CATALINA_BASE/webapps/* 
      rm -rf $CATALINA_BASE/work/* 
      /usr/local/tomcat/bin/startup.sh 
      RETVAL=$? 
      echo 
      [ $RETVAL = 0 ] && touch /var/lock/subsys/tomcat 
      ;; 
    stop) 
      # Stop daemons. 
      echo -n "Shutting down Tomcat: " 
      /usr/local/tomcat/bin/shutdown.sh 
      RETVAL=$? 
      echo 
      [ $RETVAL = 0 ] && rm -f /var/lock/subsys/tomcat 
      ;; 
    restart) 
      $0 stop 
      $0 start 
      ;; 
    condrestart) 
     [ -e /var/lock/subsys/tomcat ] && $0 restart 
     ;; 
    status) 
      status tomcat 
      ;; 
    *) 
      echo "Usage: $0 {start|stop|restart|status}" 
      exit 1 
    esac 

應用程序安裝與context.xml文件中$CATALINA_BASE/conf/Catalina/localhost

回答

2

我不這麼認爲。絕對不是webapps文件夾 - 你將不得不重新部署你的web應用程序。並且work文件夾沒有多大意義,存儲已編譯的JSP頁面(在.java.class表單中),並刪除它意味着它們必須重新編譯。

刪除work文件夾在調試JSP時很有意義,但如果Tomcat確實使用最新版本,則無法確定。否則,我看不出多少意義。

+0

贊同約瑟夫的言論。 WebApps,你將不得不重新發布。 WORK和TEMP都可以,但可能會導致您的服務器週期延遲。有些應用程序可以重新加載上下文,但在WORK/TEMP的情況下,您需要重新啓動服務。 – Leptonator