昨天甲方想要去部署项目问我目录结构,我登上堡垒机去截图给他并将线上的项目做个备份,做了备份之后我顺手就把war包删了。然后让他们登录上去进行部署,他们说webapps项目文件夹中是空的。然后让他们赶紧把最新的war包扔上去,他们又怎么都部署不好,只好又把修改的文件发给我我重新打包再部署,导致一汽线上数据不能显示差不多半小时。文件夹消失的主要原因在于我把war包删除了,总结一下原因。并甲方提到了全量部署、增量部署两个名词没听说过,查一下。
tomcat配置文件:
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
- autoDeploy:为true时,自动部署。表示tomcat在运行状态时,可以监测appBase即默认webapps文件夹下的文件,如果有文件加入,则自动发布这个应用。如果war包删除,相应的文件夹也会被删除。
- unpackWARs:为true时,会先解压war包成文件夹后运行应用。false时直接运行war包。
因此:
- war包不能在tomcat运行时删除,否则会将相应的工程文件夹自动删除。可以将tomcat停止后再删除,重启后不影响工程文件夹。
- 重启时如果有和war包相同名称的工程文件夹时,不会再次解压war包,也不会覆盖原有工程文件夹。