Springboot前后端分离项目合并一起打war包

本文详细介绍了如何将一个Springboot的前后端分离项目打包成war文件并部署到外部Tomcat服务器。关键步骤包括修改打包方式、排除内置Tomcat、添加servlet依赖、设置build的finalName、修改启动类以适应war包部署、创建配置类处理业务初始化、拷贝前端资源并配置资源打包。最后通过Maven插件进行打包,部署后可访问应用。
摘要由CSDN通过智能技术生成

Springboot前后端分离项目要部署war包到外部tomcat流程

1.先修改打包方式为war包

<packaging>war</packaging>

2.去掉springboot内置tomcat

        方式一:使用exclusion标签排除web启动器自带的tomcat

                注意:使用该方式需添加servlet依赖

   <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <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>
            <scope>provided</scope>
 </dependency>

        方式二:使用scope标签控制依赖的使用范围,设置参数为provided

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
 </dependency>

3.build标签中设置打包的文件名

<finalName>name</finalName>

4.修改启动类(启动类的main方法在打war包后不会执行)

@SpringBootApplication
@MapperScan("com.ssq.mapper")
@EnableScheduling
public class MyApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(MyApplication.class);
    }

5.之前在main方法中要初始化一些业务,因为要打war包之后main方法不会执行,所以建一个新的配置类来执行业务初始化代码

@Component
public class BeginConfig implements ApplicationListener<ContextRefreshedEvent> {
    @Override
    public void onApplicationEvent(ContextRefreshedEvent event) {
     //在此编写项目启动后需要执行的初始化代码

    }
}

6.将前端文件拷贝到resource目录下的static目录下

        

7.在build标签下配置resource标签,确保将前端文件打到war包中        

 <resource>
      <directory>src/main/resources</directory>
      <includes>
         <include>**/*</include>
       </includes>
  </resource>

 8.使用maven插件打包即可,打包之前最好clean一下,之后部署在外部tomcat里就可以访问到了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值