如何让自己的SpringBoot程序在Windows环境下打包运行?

简介: 如何让自己的SpringBoot程序在Windows环境下打包运行?

一、前言

大家好,我是卷心菜,大二学生一枚。


博主已经在自己的springboot专栏:springboot学习记录,更新了九篇文章,分别涉及:配置文件的初级和高级使用,多环境开发的使用、代码测试的具体应用、日志的详细介绍以及用springboot整合基本的技术框架等等,这些代码都运行在idea中,那么今天就来介绍一下如何在Windows系统下运行自己的代码。


那么通过这篇文章,各位小伙伴们可以收获哪些呢?


Windows系统下运行springboot程序

项目上线的流程,简单介绍

程序的打包和运行

废话不多说,满满的干货,赶快来看看吧~


二、流程介绍

大家都很明白,我们天天写程序是在Idea下写的,运行也是在Idea下运行的,但是自从自己看了springboot开发完成一个小项目的操作后,才知道我们的项目是不可能运行在自己的电脑上的。


以后制作的程序是运行在服务器上的,简单说就是将我们写的程序放在一台独立运行的电脑上,就叫他服务器吧。


那我们的程序如何运行在服务器上呢,这里面就存在两个过程,一个是打包的过程,另一个是运行的过程。


温馨提示


项目上线为了保障环境适配性会采用下面流程发布项目,了解一下:


开发部门使用Git、SVN等版本控制工具上传工程到版本服务器

服务器使用版本控制工具下载工程

服务器上使用Maven工具在当前真机环境下重新构建项目

启动服务

三、程序打包

那么就开始我们的程序打包这个操作吧:


SpringBoot程序是基于Maven创建的,在Maven中提供有打包的指令,叫做package。具体指令如下:


mvn package


本操作可以在Idea环境下执行:


首先先看看自己程序的初始目录,如下:

image.png

然后在maven中执行下面两个操作:

image.png

执行之后,大家就可以发现初始目录发生了变化,多了一个target文件夹,具体如下:

image.png

打包后会产生一个与工程名类似的jar文件,其名称是由模块名+版本号+.jar组成的。


四、程序运行

既然打包好了,那么我们该如何运行这个jar包呢?


程序包打好以后,就可以直接执行了。在程序包所在路径下,执行指令。


java -jar 工程包名.jar


看看我的具体演示:

image.png

然后在命令行输入java -jar springboot_01_02-0.0.1-SNAPSHOT.jar,就可以运行了


写一个代码用来测试一下:


@RestController
@RequestMapping("/books")
public class BookController {
    @GetMapping("/getBooks")
    public String getBooks() {
        return "Hello,SpringBoot is running";
    }
}


输入测试地址:http://localhost:8080/books/getBooks

image.png


从测试中可以看出,执行程序打包指令后,程序正常运行,与在Idea下执行程序没有区别。


五、注意点

如果计算机中没有安装java的jdk环境,是无法正确执行上述操作的,因为程序执行使用的是java指令。

在使用向导创建SpringBoot工程时,pom.xml文件中会有如下配置,这一段配置千万不能删除,否则打包后无法正常执行程序。

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>


六、总结

SpringBoot工程可以基于java环境下独立运行jar文件启动服务

SpringBoot工程执行mvn命令package进行打包

执行jar命令:java –jar 工程名.jar


相关文章
|
11天前
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
13天前
|
Java 测试技术 应用服务中间件
Spring Boot 如何测试打包部署
本文介绍了 Spring Boot 项目的开发、调试、打包及投产上线的全流程。主要内容包括: 1. **单元测试**:通过添加 `spring-boot-starter-test` 包,使用 `@RunWith(SpringRunner.class)` 和 `@SpringBootTest` 注解进行测试类开发。 2. **集成测试**:支持热部署,通过添加 `spring-boot-devtools` 实现代码修改后自动重启。 3. **投产上线**:提供两种部署方案,一是打包成 jar 包直接运行,二是打包成 war 包部署到 Tomcat 服务器。
40 10
|
13天前
|
Java 应用服务中间件
SpringBoot工程打包部署
SpringBoot工程打包部署简介:SpringBoot项目可通过三种方式运行:可执行Jar包、可执行War包和标准War包。其中,可执行Jar/War包可独立运行,标准War包需部署在Tomcat中。具体步骤包括:1. 修改pom.xml添加构建依赖;2. 执行`mvn clean package`命令打包;3. 运行生成的Jar/War包(如`java -jar xxx.jar`)。对于标准War包,还需修改启动类并配置Tomcat依赖。
|
17天前
|
人工智能 数据处理 C#
AI Dev Gallery:微软开源 Windows AI 模型本地运行工具包和示例库,助理开发者快速集成 AI 功能
微软推出的AI Dev Gallery,为Windows开发者提供开源AI工具包和示例库,支持本地运行AI模型,提升开发效率。
64 13
|
23天前
|
Linux C# iOS开发
开源GTKSystem.Windows.Forms框架让C# Winform支持跨平台运行
开源GTKSystem.Windows.Forms框架让C# Winform支持跨平台运行
53 12
|
2月前
|
Dubbo Java 应用服务中间件
深入探讨了“dubbo+nacos+springboot3的native打包成功后运行出现异常”的原因及解决方案
本文深入探讨了“dubbo+nacos+springboot3的native打包成功后运行出现异常”的原因及解决方案。通过检查GraalVM版本兼容性、配置反射列表、使用代理类、检查配置文件、禁用不支持的功能、查看日志文件、使用GraalVM诊断工具和调整GraalVM配置等步骤,帮助开发者快速定位并解决问题,确保服务的正常运行。
72 1
|
3月前
|
XML 缓存 前端开发
Electron-builder 是如何打包 Windows 应用的?
本文首发于微信公众号“前端徐徐”,作者徐徐深入解析了 electron-builder 在 Windows 平台上的打包流程。文章详细介绍了 `winPackager.ts`、`AppxTarget.ts`、`MsiTarget.ts` 和 `NsisTarget.ts` 等核心文件,涵盖了目标创建、图标处理、代码签名、资源编辑、应用签名、性能优化等内容,并分别讲解了 AppX/MSIX、MSI 和 NSIS 安装程序的生成过程。通过这些内容,读者可以更好地理解和使用 electron-builder 进行 Windows 应用的打包和发布。
235 0
|
3月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
203 0
|
3月前
|
Java 应用服务中间件 Maven
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
399 0
《Springboot极简教程》运行SpringBoot程序
http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-running-your-application.html
743 0