部署战争后,Tomcat在解压目录时做了什么?

因此,我已经将Java Web应用程序(myapp.war)部署到正好在Amazon EC2上运行的Tomcat 7服务器。 我注意到,当我这样做时,它会覆盖名为myapp的类似命名的目录,当我部署时。 我进一步意识到,应用程序实际上是从myapp目录提供的,当我直接更改该目录中的文件时,会按预期将这些更改提供给客户端。

我的问题是,Tomcat在重新部署之间对这个目录做了什么? 如果我在该目录中的文件中做了一些小改动,它会在我重新部署之前被覆盖吗?


这取决于。

类文件的更改可能会被忽略。

根据JSP是否已被访问以及JSP Servlet是否配置为检查更改,对JSP的更改可能会生效。

对静态文件的更改可能会生效,但可能会因静态文件缓存的影响而延迟。 通常情况下,延迟只有几秒钟,但可以配置为更长。

编辑web.xml可能会触发重新加载(这可以通过配置禁用)

编辑contex.xml可能会触发重新部署。

重新加载会暂停应用程序,重新读取web.xml并取消暂停应用程序,以便用户可能会看到短暂暂停但没有404s。 重新部署完全删除旧的应用程序并创建一个新的应用程序。 用户可能会在错误的时间尝试访问它时看到404。

一旦部署了新的WAR文件,所有本地更改都将丢失。

链接地址: http://www.djcxy.com/p/55891.html

上一篇: What does Tomcat do with unpacked directory after deploying a war?

下一篇: Deploying WAR file on WebLogic Server using Ant and specified upload path