Tomcat部署项目的三种方式
将项目打成war包的形式
-
直接将项目打成的war包放入webapps文件夹中,启动tomcat服务即可
-
通过修改conf/server.xml文件的方式
打开tomcat下conf/server.xml,在Host标签中,添加<Context docBase="" path="" reloadable="" debug="" crosscontext="" />
标签,在标签之间输入项目配置信息如下:
docBase:web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。其实也就是编译后的项目 path:浏览器访问时的路径名 reloadble:设定项目有改动时,tomcat是否重新加载该项目 debug:调试信息,等级从0~9,等级越高调试信息就越多。 crosscontext="true"时,表示不同context共享一个session。 privileged="true"时,才允许Tomcat的Web应用使用容器内的Servlet。 antiResourceLocking和antiJARLocking:热部署需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。
-
通过在apache-tomcat-8.0.47\conf\Catalina\localhost添加部署项目xml文件
在localhost文件夹下创建以项目名为名的xml文件,在文件中添加如下:<Context docBase="D:/myProject" reloadable="true"/>
最后:
- 第一种方法比较普通,但是我们需要将编译好的项目重新 copy 到 webapps 目录下,启动服务即可
- 第二种方法直接在 server.xml 文件中配置,但是从 tomcat5.0版本开始后,server.xml 文件作为
tomcat启动的主要配置文件,一旦 tomcat 启动后,便不会再读取这个文件,因此无法再 tomcat 服务启动后发布 web 项目 - 第三种方法是最好的,每个项目分开配置,tomcat 将以\conf\Catalina\localhost 目录下的 xml文件的文件名作为
web 应用的上下文路径,而不再理会 中配置的 path 路径,因此在配置的时候,可以不写 path。
优先级3方式>2方式>1方式