[英]how to run webapps on tomcat automatically
我使用我的eclipse部署了一個java服務器。
我提取war
文件。
我在我的Windows Server 2003上安裝了apache-tomcat-7.0.47
我在我的Windows Server 2003上安裝了Apache Tomcat 7
服務並使其自動運行。
我想在我的Windows Server 2003上運行war
文件
我將war
文件放在我的webapps上的apache-tomcat
文件夾中,然后運行找到bin
文件夾的startup.bat
。
我測試服務器,它完美地工作
當我從我的Windows服務器登錄時。 戰爭文件停止工作。
當我登錄時,如何讓服務器保持工作狀態。 請注意我安裝了該服務並多次重啟服務器。
一種方法是使用Java Server Wrapper或http://support.microsoft.com/kb/137890
在Java 文檔中 ,似乎有一種方法可以在Java本身中執行此操作,將-Xrs添加到服務器啟動中的java.exe調用(我認為是bat文件)。 注意使用它的后果!
-Xrs減少Java VM對操作系統信號的使用。
在早期版本中,添加了Shutdown Hooks工具以啟用Java應用程序的有序關閉。 目的是使用戶清理代碼(例如關閉數據庫連接)在關閉時運行,即使Java VM突然終止。
Java VM監視控制台控制事件,以實現意外Java VM終止的關閉掛鈎。 具體來說,Java VM注冊一個控制台控制處理程序,它啟動shutdown-hook處理並為CTRL_C_EVENT,CTRL_CLOSE_EVENT,CTRL_LOGOFF_EVENT和CTRL_SHUTDOWN_EVENT返回TRUE。
JVM使用類似的機制來實現轉儲線程堆棧的功能以進行調試。 JVM使用CTRL_BREAK_EVENT執行線程轉儲。
如果Java VM作為服務運行(例如,Web服務器的servlet引擎),則它可以接收CTRL_LOGOFF_EVENT,但不應啟動關閉,因為操作系統實際上不會終止該進程。 為避免此類可能的干擾,從J2SE 1.3.1開始添加-Xrs命令行選項。 在Java VM上使用-Xrs選項時,Java VM不會安裝控制台控制處理程序,這意味着它不會監視或處理CTRL_C_EVENT,CTRL_CLOSE_EVENT,CTRL_LOGOFF_EVENT或CTRL_SHUTDOWN_EVENT。
指定-Xrs有兩個后果:
Ctrl-Break線程轉儲不可用。
用戶代碼負責導致關閉掛鈎運行,例如通過在終止Java VM時調用System.exit()。
讀完aksappy
的答案后。 我發現jvm正在解決這個問題。 我去了apache-tomcat
的bin
文件夾並運行tomcat7w.exe
,然后我轉到shutdown選項卡並將jvm
更改為java
。
您可以在server.xml中為Web應用程序設置“deployIgnore”屬性; 此屬性將忽略部署中的war文件名。 稍后您可以手動部署應用程序
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.