🍧SpringBoot项目如何部署在Tomcat中

 


Tomcat中部署SpringBoot项目

一、新建SpringBoot项目

1
2
3
4
5
<!--SpringBoot-WEB依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

二、pom.xml中排除内嵌的tomcat

1
2
3
4
5
6
<!--排除内嵌的tomcat-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

三、pom.xml中添加对项目打war包插件

1
<packaging>war</packaging>

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<build>
    <!--war包名称-->
    <finalName>${project.artifactId}</finalName>
    <!--对项目打war包依赖-->
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>3.0.0</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
    </plugins>
</build>

四、编写WEB发布容器启动类

  创建一个继承自 SpringBootServletInitializer 的类,并重写 configure() 方法,如下所示:

SpringbootServletInitializerApplication是SpringBoot主启动类的类名

1
2
3
4
5
6
public class ServletInitializerApplication extends SpringBootServletInitializer{
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(SpringbootServletInitializerApplication.class);
    }
}

五、执行Maven构建

1
mvn clean install

六、发布

  将打包好的war包放在tomcat的webapps目录下即可,Tomcat启动会自动解压war包。

需要注意的几点是:

  • 1、项目启动会使用Tomcat容器的端口,SpringBoot中配置端口不会生效
  • 2、项目访问需要加上war包的名称,比如:localhost:8080/springboot-servlet-nitializer
  • 3、如果想要不加项目名访问,需要修改fileName为ROOT,例如:<finalName>ROOT</finalName>
posted @   Java小白的搬砖路  阅读(2186)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2022-02-21 ElasticSearch学习笔记-尚硅谷

喜欢请打赏

扫描二维码打赏

支付宝打赏

点击右上角即可分享
微信分享提示