IDEA打包springboot项目为war并发布到tomcat服务器

最近有个springboot项目要发布到独立的tomcat下运行,其中遇到了很多坑,在此记录下:

1.springboot项目打包配置:

首先在启动类目录下新增打包类

 备注:启动类继承自SpringBootServletInitializer方可正常部署至常规tomcat下,其主要能够起到web.xml的作用(web.xml主要配置各种servlet,filter,listener等,如常见的Log4jConfigListener、OpenSessionInViewFilter、CharacterEncodingFilter、DispatcherServlet等,此部分信息均是容器启动时加载)

2.pom文件改动:

2.1需要新增这些依赖:

其中tomcat.version要和tomcat服务器中设置的jdk版本一致!(linux下命令:whereis java)

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <!-- 移除嵌入式tomcat插件 -->
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-juli</artifactId>
    <version>${tomcat.version}</version>
</dependency>

<build><plugins><plugins>中新增:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <finalName>${project.name}</finalName><!-- 打包后的war名称-->
    </configuration>
</plugin>

2.2其中需要修改的pom标签:

<packaging>war</packaging>  打jar包需要改为jar

2.3IDEA执行:

 打完的war包在

发布到tomcat容器下就可以了。

其中tomcat服务器搭建几个注意点:

1.修改端口号(三处修改),防止多tomcat冲突

2.tomcat指定jar需要修改 setclasspath.sh 新增两句语句:

export JAVA_HOME=/usr/java/jdk1.8.0_65
export JRE_HOME=/usr/java/jdk1.8.0_65/jre/         (后面的/不能漏)

3.修改tomcat的内存

发布了23 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq1076472549/article/details/81318729