Spring Boot项目的两种发布方式

5.1.方式1:通过jar包发布

步骤1:在pom中添加一个SpringBoot的构建的插件

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

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

步骤3:然后在jar包项目文件位置使用cmd终端发布项目

java -jar xxx.jar

5.2.方式2:通过war包发布

步骤1:在pom.xml文件中将jar修改为war

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

步骤2:设置tomcat启动器依赖范围

maven依赖范围参考:资料/maven依赖作用范围.png

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

步骤3:设置war包的名字

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

步骤4:修改启动类

java 复制代码
package com.by;

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:
 *   1、标识当前类是springboot的启动类
 *   2、并把启动类所在包当作要扫描的包
 */
@SpringBootApplication
public class App extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(App.class);
    }

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

步骤5:将打包后的war包放入tomcat的webapps文件中

在tomcat的bin文件中点击startup.bat运行

运行成功后会在tomcat的webapps文件中出现一个相同名字的文件

相关推荐
墩墩大魔王丶12 小时前
macOS Rust 安装教程:自定义 CARGO_HOME 和 RUSTUP_HOME
后端
一杯奶茶¥12 小时前
水果销售网站 CRM客户信息管理系统 超市管理系 酒店管理系统 健身房管理系统 在线音乐网站 校园招聘系统
java·vue.js·spring boot·mysql·spring·java项目
进阶的小名13 小时前
Spring Boot SSE + Nginx 配置:解决 EventSource 不实时返回、连接超时、流式响应被缓冲问题
spring boot·后端·nginx
PinkSun14 小时前
Spring AI RAG踩坑:我骂了半年的FilterExpression,其实是背锅侠
后端·ai编程
我登哥MVP14 小时前
SpringCloud Alibaba 核心组件解析:服务链路追踪
java·spring boot·后端·spring·spring cloud·java-ee·maven
by————组态14 小时前
Ricon组态系统 - 新一代Web可视化组态平台
前端·后端·物联网·架构·组态·组态软件
云技纵横14 小时前
ThreadLocal 内存泄漏:你的应用正在悄悄 OOM
后端
小撒的私房菜14 小时前
Multi-Agent 里谁来指挥?我用一个调度员,让多个 Agent 开始协作
人工智能·后端·agent
范什么特西14 小时前
Spring boot细节
java·spring boot·后端
苍何15 小时前
高考填志愿,我做了个 Skill,300 个 Agent 同时查公司
后端