Spring Boot项目Win7+JDK8+Tomcat8环境下的War包部署

Posted ylhssn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot项目Win7+JDK8+Tomcat8环境下的War包部署相关的知识,希望对你有一定的参考价值。

 一、pom.xml及启动类修改

pom.xml

Step1:指定打包类型

<!-- 打包类型 jar 或 war -->
<packaging>war</packaging>

Step2:移除嵌入式tomcat插件

<!-- 支持web的模块 -->
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
     <!--忽略内嵌tomcat,打包部署到tomcat。注*本地运行的时候要把这一段忽略引入个注释掉,要不然项目启动不了-->
     <exclusions>
          <exclusion>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
      </exclusions>
</dependency>

Step3:添加javax-servlet依赖

<dependency>
      <groupId>org.apache.tomcat</groupId>
      <artifactId>tomcat-servlet-api</artifactId>
      <version>8.0.36</version>
      <scope>provided</scope>
</dependency>

修改启动类,并重写初始化方法 

使用jar包启动项目直接使用main即可,但是使用war包部署项目需要使用类似于web.xml的配置方式来启动spring上下文,在Application类的同级添加一个SpringBootStartApplication类,代码如下:

技术图片

 

二、Tomcat准备

Step1:指定JAVA_HOME、JRE_HOME、CATALINA_HOME

在setclasspath.bat内指定JAVA_HOME、JRE_HOME: 

      技术图片

在startup.bat中指定CATALINE_HOME

     技术图片

在Tomcat的bat脚本中指定JDK、TOMCAT环境,可以避免对环境变量的影响。

Step2:conf/Context.xml指定cacheMaxSize

避免项目启动时因未资源最大可使用缓存不够导致的报错““consider increasing the maximum size of the cache”,

技术图片

三、制作War包

IDea+Maven:使用Maven工具的Lifecycle的package,先clean,再package(右键)->Run Maven Build

四、运行

将war包拷贝至Tomcat/webapps路径下,并使用bin/startup.bat脚本启动服务。

 

以上是关于Spring Boot项目Win7+JDK8+Tomcat8环境下的War包部署的主要内容,如果未能解决你的问题,请参考以下文章

跟我学Spring Boot创建Spring Boot 项目

将 Spring Boot 项目从 JDK 8 升级到 JDK 11

spring boot web项目demo

Spring boot 1: 使用IDEA创建Spring boot项目

Spring Boot 2.0 常见问题总结

springboot1.5,2.1 + jdk8,jdk11的 内存占用对比