首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring Boot中java-jar的启动jar包的原理

Spring Boot打包出来的jar包:

springbootdemo-0.0.1-SNAPSHOT.jar是spring-boot-maven-plugin生成的jar包。包含了应用的第三方依赖,spring boot相关的类,存在嵌套的jar包,称之为executable jar或fat jar。springbootdemo-0.0.1-SNAPSHOT.jar.original是默认的maven-jar-plugin生成的包,仅包含编译用的本地资源。

MANIFEST.MF文件文件内容(下面源码分析中getMainClass()实际就是获取了该文件中的Start-Class属性的属性值)

当我们执行java -jar命令时他会找到/META-INF/MANIFEST.MF文件中的Main-Class属性,从而找到应用程序执行入口类org.springframework.boot.loader.JarLauncher,该类中定义了main()从而我们找到了程序入口。在该方法中构建了JarLauncher并调用了launch()方法。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230420A0A4HM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券