Spring Boot应用部署 - JAR包部署

Spring Boot应用部署采用打包成JAR文件的方式,旨在利用其内置的嵌入式Tomcat或其他Servlet容器,简化传统Web应用部署流程。以下是详细的步骤和说明:

1. 使用Maven或Gradle进行打包

Maven

在Spring Boot项目中,确保pom.xml文件已经包含了Spring Boot Maven插件。如果未添加,需添加如下配置:

xml 复制代码
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

然后在命令行或IDE中执行打包命令:

bash 复制代码
mvn clean package

这将清理旧的构建产物,编译项目,执行测试(如果有),并最终打包成一个可执行的JAR文件。生成的JAR通常位于target目录下,文件名格式为your-project-name-<version>.jar

这将完成同样的清理、编译、测试和打包过程,生成的JAR文件同样位于build/libs目录下,文件名类似your-project-name-<version>.jar

2. 打包类型

Spring Boot应用默认被打包为"fat JAR"或"über JAR",这种类型的JAR不仅包含了项目的字节码,还包含了所有依赖库以及嵌入式Servlet容器(如Tomcat)。这意味着一个单一的JAR文件就包含了应用运行所需的所有组件,无需在目标环境中预先安装或配置Servlet容器。

3. 部署JAR文件

本地部署

要运行打包好的JAR文件,只需在命令行中使用java -jar命令:

bash 复制代码
java -jar target/your-project-name-<version>.jar
# 或者对于Gradle项目
java -jar build/libs/your-project-name-<version>.jar

根据需要,可以指定各种运行参数、环境变量或配置文件位置。例如:

bash 复制代码
java -Dserver.port=8081 -jar your-project-name.jar --spring.config.location=file:/path/to/application.properties
远程服务器部署

将生成的JAR文件上传到目标服务器,通常放置在合适的应用部署目录下。然后通过SSH登录服务器,执行与本地相同的方式启动应用:

bash 复制代码
ssh user@remote-server
cd /path/to/deployment/directory
java -jar your-project-name.jar

确保服务器上已安装了兼容的Java运行环境(JRE或JDK),且版本与项目构建时使用的Java版本相符。

相关推荐
我爱娃哈哈1 小时前
SpringBoot 实现 RSA+AES 自动接口解密
java·spring boot·后端
崎岖Qiu1 小时前
SpringBoot:基于注解 @PostConstruct 和 ApplicationRunner 进行初始化的区别
java·spring boot·后端·spring·javaee
小张快跑。2 小时前
【SpringBoot进阶指南(一)】SpringBoot整合MyBatis实战、Bean管理、自动配置原理、自定义starter
java·开发语言·spring boot
草履虫建模2 小时前
A02 Maven 基础配置:本地仓库、镜像、项目编码与常见问题(IDEA 实战)
xml·java·spring boot·spring·maven·intellij-idea·idea
shejizuopin2 小时前
基于Spring Boot的高校科研管理系统的设计与实现(毕业论文)
java·spring boot·vue·毕业设计·论文·毕业论文·高校科研管理系统的设计与实现
indexsunny2 小时前
互联网大厂Java面试实战:Spring Boot微服务在电商场景中的应用
java·数据库·spring boot·redis·微服务·kafka·电商
哪里不会点哪里.2 小时前
如何自定义一个 Spring Boot Starter?
java·spring boot·后端
不吃香菜学java2 小时前
springboot左脚踩右脚螺旋升天系列-入门程序
java·spring boot·后端
悟能不能悟2 小时前
eclipse run springboot的application类,保存文件的路径会默认在哪里
java·spring boot·eclipse
没有bug.的程序员2 小时前
Spring Boot 性能优化:启动时间从 5s 到 1s 的全链路实战指南
java·spring boot·后端·spring·性能优化·全链路·启动时间