2012-04-19 72 views
1

我使用:的Tomcat 6和更新的context.xml上部署

  • 的Tomcat 6.0.30

這裏是我的context.xml和web.xml結構在我的Web應用程序項目:

  • META-INF
    • 的context.xml
  • WEB-INF
    • 的web.xml

當我爲我的應用程序WAR文件,context.xml中被包裝成預期。當我將WAR文件複製到Tomcat webapps文件夾並啓動Tomcat時,WAR文件被解壓縮,context.xml被複制到\conf\Catalina\localhost\<webappname>.xml,如預期的那樣。但是,這隻有在<webappname>.xml尚不存在的情況下才有效。因此,我無法更新context.xml,打包WAR並重新部署,而無需先刪除現有的<webappname>.xml。我知道這是基於閱讀文檔的預期功能。

我的問題是,我該怎麼做?如何更新context.xml並將這些更新自動複製,就像它們是全新的一樣?我不想在每次發佈前刪除<webappname>.xml

也許我正在走這個錯誤的方式?

+0

我得出結論,我只需要處理 用它。 – 2012-04-19 17:49:08

回答

4

如果您先取消部署應用程序,則將從conf/Catalina/localhost文件夾中刪除.xml文件。只是放棄一場新的戰爭,但不會觸發解除部署(只是一個部署),舊的XML文件將不會被取代。

您可以通過取消部署任何應用程序:

  • 刪除的文件夾的webapps戰爭文件 - tomcat會取消部署應用程序(如自動部署設置爲true,在server.xml中的主機配置)
  • 如果您安裝了管理器應用程序,您可以在應用程序上執行delete/remove/undeploy命令,或者在上傳新戰爭時可能會出現「undeploy」選項(我無法確定它是哪一個)
+0

+1非常基本和有價值的輸入。 – TechSpellBound 2013-05-14 10:03:58