静态部署
Webapps
- 把项目复制到Tomcat的Webapps
- 把war包复制到Tomcat的Webapps下
*修改Webapps的默认路径: *
Tomcat的conf目录下的server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
修改appBase即可
配置server.xml
在Tomcat里,一个项目对应一条Context
部署项目可以在server中添加Context,如:
<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work" debug="0" privileged="true"/>
path:虚拟路径
docBase:物理路径
workDir:工作目录,存放运行时与工程相关的文件
reloadable:为true时,支持热部署,会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序
antiResourceLocking和antiJARLocking: 热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里
创建context.xml
在Tomcat目录下,conf/Catalina/localhost创建context.xml
在上述目录中,创建xml文件,文件名与path保持一致
<Context path="/hello" docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>
动态部署
在 http://localhost:8080 里管理应用并动态发布