SpringBoot项目打war包发布云服务器,并保证同一个tomcat端口运行多个项目情况下定时任务不会重复启动全过程

本文档详细介绍了如何将一个SpringBoot应用配置为war包并部署到Tomcat服务器的过程,包括修改`application.properties`,配置启动类,调整pom.xml文件,打包,上传到云服务器,创建数据库,配置站点以及解决静态资源访问问题。通过这些步骤,确保了SpringBoot应用在外部Tomcat上的正常运行和访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一步:检查application.properties文件中启用生产环境的配置。

第二步:在项目启动入口文件中添加配置,此配置只有在打war包时需要配置,jar包不需要

public class LotPlatformApplication extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(LotPlatformApplication.class, args);
    }

    // 将项目打成war包时需要加此配置
    // 先将启动类继承自 SpringBootServletInitializer,然后重写configure方法,外部tomcat才能找到入口
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(LotPlatformApplication.class);
    }

}

第三步:配置pom文件,如下配置

  1. 先修改打包方式为war包形式,添加如下
    <!-- 下面的配置打包形式,war或jar包,springboot默认是jar包形式 -->
        <packaging>war</packaging>
  2. 移除内置tomcat,并添加javax.servlet-api
    <!-- 当项目打war包时添加下面两个依赖。将内置tomcat修改为外置,使用 provided;
             添加servlet-api依赖(因为项目中某些工具会用到时,如果缺失会报错,打jar包时将其移除-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <scope>provided</scope>
            </dependency>
  3. 在<build>中添加资源路径,否则发布后可能访问不了
    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId&g
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值