SpringBoot java -jar 的启动原理

本文探讨了Spring Boot使用java -jar启动的应用原理。通过分析jar包目录结构,特别是MANIFEST.MF文件中的Main-Class属性,指出Spring Boot的jar启动器JarLauncher在启动过程中的作用。JarLauncher能够处理BOOT-INF/classes和BOOT-INF/lib下的资源,使得项目能够顺利启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在运用Spring Boot 后,我们基本上摆脱之前项目每次上线的时候把项目打成war包。当然也不排除一些奇葩的规定,必须要用war包上线,不过很多时候,我们对一些东西只是处在使用的阶段,并不会去深入的研究使用的原理是什么,这貌似也是大多数人的固定思维。

或许正是如此,总会有些没有固定思维的人会去积极的探索原理,当然这话不是说我是积极的,我其实也是只原理的搬运工。今天和大家来简单的说下Spring Boot 的项目在运行Java -jar的原理。

jar包目录和jar命令启动入口

在正式开始之前,我们先来看看把jar包进行解压。然后用tree /f命令查看目录结构(由于笔者写博文时用的是window,所以用的是tree /f命令),由于目录结构太长,这里做了相应省略,如下:

├─BOOT-INF

│ ├─classes

│ │ │ application.properties

│ │ │

│ │ └─com

│ │ └─spring

│ │ └─boot

│ │ └─test

│ │ SpringBootTestApplication.class

│ │

│ └─lib

│ classmate-1.5.1.jar

│ hibernate-validator-6.0.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔向理想的星辰大海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值