SpringBoot jar包内容结构分析小结

有时候定位一些问题可能需要从jar包里分析,比如是否正确生成了springboot的启动包,二/三方库依赖版本号是否符合预期等

1.解压jar包:zip xxxx.jar

- META-INF/
  - MANIFEST.MF
  - maven/
    - <groupId>/
      - <artifactId>/
        - pom.properties
        - pom.xml
- BOOT-INF/
  - classes/
    - <application files and directories>
  - lib/
    - <dependency JAR files>
  - spring-boot-loader/
    - <Spring Boot loader files>
- org/
  - springframework/
    - boot/
      - loader/
        - <Spring Boot loader classes>
- <other files and directories>

解压后,像是上面这种文件结构,才是正确的springboot启动包,如果不是,可能是没有配置springboot的maven打包插件;

让我们逐个解释这些目录和文件的作用:

  • META-INF/: 这个目录包含了 JAR 文件的元信息。

    • MANIFEST.MF: 这是 JAR 文件的清单文件,其中包含了关于 JAR 文件的元数据和配置信息。
    • maven/: 如果您使用 Maven 构建项目,该目录包含了与 Maven 构建相关的信息。
      • <groupId>/: 这个目录是您项目的 Maven Group ID。
        • <artifactId>/: 这个目录是您项目的 Maven Artifact ID。
          • pom.properties: 这个文件包含了与项目构建相关的属性。
          • pom.xml: 这个文件是 Maven 项目的 POM 文件。
  • BOOT-INF/: 这个目录包含了 Spring Boot 应用程序的运行时内容。

    • classes/: 这个目录包含了应用程序的编译后的类文件和资源文件。
    • lib/: 这个目录包含了应用程序的依赖项(JAR 文件)。
    • spring-boot-loader/: 这个目录包含了 Spring Boot 加载器相关的文件。
      • <Spring Boot loader files>: 这些文件是 Spring Boot 加载器使用的文件,用于启动和加载应用程序。
  • org/: 这个目录包含了应用程序的依赖库和类文件。

    • springframework/: 这个目录包含了 Spring Framework 相关的类文件。
      • boot/: 这个目录包含了 Spring Boot 相关的类文件。
        • loader/: 这个目录包含了 Spring Boot 加载器相关的类文件。
  • <other files and directories>: 这些是其他应用程序可能包含的文件和目录,例如静态资源文件、配置文件、日志文件等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值