2015-02-05 89 views
1

Tomcat行为怪异。我们的应用运行良好。如何调试tomcat war文件autodeploy

有时(并非所有的时间)我们停止tomcat并替换我们的战争文件。当我们启动tomcat备份时,没有错误报告,但战争文件并不总是部署。文件和文件夹日期来自以前的版本。当发生这种情况时,吹走部署的目录并重新启动tomcat将部署整个war文件。

在其他时候,删除部署的目录和文件并重新启动tomcat将导致部分部署。整个.war文件不会被解压缩。和以前一样,没有错误报告。

在其他时间,一切似乎工作。这发生在我们在Unix和Windows上。运行tomcat 7和tomcat 8.

我不问这是什么问题,我想弄清楚如何在tomcat中调试部署机制。有什么我可以设置,所以我可以看到它部署?

回答

0

有两种部署,热部署和冷部署。热部署(首选)是当tomcat保持运行时。当你停止tomcat时发生COLD部署。发生这种情况时,您必须手动删除webapps /下的目录。

据:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2013517

以前版本的应用程序的继续部署

  • 根据默认设置,这种策略通常不作为期望的工作。随着unpackWARs =“true”,自动部署者将应用程序的先前版本分解成一个目录。当使用更新的WAR重新启动Tomcat时,根据部署顺序,忽略WAR文件,并且部署上下文描述符或目录。因此,部署了先前版本的应用程序,而不是WAR中的更新版本。

  • 为了正确冷配置,除了更新WAR文件之外,还要从conf/Catalina/localhost /中的应用程序中删除webapps /中的分解目录和任何上下文描述符。然后,自动部署程序在启动时使用更新的WAR文件进行部署。