Spring Boot项目的两种发布方式

一、通过jar包发布

1、在pom中添加一个SpringBoot的构建的插件

复制代码
 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <!--自动检测项目中的 main 函数-->
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

在maven视图中,选择"package",在target中会产生xxx.jar包

然后在cmd终端发布项目java -jar xxx.jar

二、通过war包发布

1、在pom.xml文件中将jar修改为war

复制代码
<packaging>war</packaging>

2、设置tomcat启动器依赖范围

复制代码
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <!--tomcat启动器依赖范围-->
            <scope>provided</scope>
        </dependency>

3、设置war包的名字(想设置可以设置,不想设置可以不设置)

复制代码
 <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <warName>hello</warName>
                </configuration>
            </plugin>

修改启动类

复制代码
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

@SpringBootApplication
public class Application extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class);
    }

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
相关推荐
祈祷苍天赐我java之术5 分钟前
如何在Java中整合Redis?
java·开发语言·redis
极小狐30 分钟前
极狐GitLab 18.5 正式发布,更新 Maven 虚拟仓库 UI(Beta)、全新个人主页、实例级合规与安全策略管理 以及 DAST 认证脚本 等
java·gitlab·maven
王元_SmallA1 小时前
【玩转全栈】----Django基本配置和介绍
java·后端
Moonbit1 小时前
招募进行时 | MoonBit AI : 程序语言 & 大模型
前端·后端·面试
LiuYaoheng1 小时前
【Android】Drawable 基础
android·java
AlianNiew1 小时前
从源码到实战:用 Java 打造“限时+防重放”的文件安全预览链接
java·后端
星梦清河2 小时前
Redis(四):缓存击穿及其解决方案(SpringBoot+mybatis-plus)
spring boot·redis·缓存
null or notnull2 小时前
java服务器空间不够时:将多个服务器的文件存放至同一个服务器上(使用映射器的办法)
java·运维·服务器·java-ee
FAFU_kyp2 小时前
WebMvcConfig 和 WebSecurityConfig 详解
spring boot·java-ee
小威要向诸佬学习呀2 小时前
2025年软件外包避坑指南与平台推荐:开发者实用经验分享
后端