首页 > 其他分享 >SpringBoot文档之Jar文件格式的阅读笔记

SpringBoot文档之Jar文件格式的阅读笔记

时间:2024-08-25 11:25:40浏览次数:12  
标签:SpringBoot boot Jar springframework jar 文件格式 org INF

  • The Executable Jar Format
    使用spring-boot-maven-plugin构建项目时,生成的目标jar文件的格式的说明。

  • Nested JARs
    JarLauncher为例:

    • META-INF/MANIFEST.MF,定义jar的元数据。
    • org.springframework.boot.loader.launch.JarLauncher.class,jar的启动类。
    • BOOT-INF/classes/,放置项目源码构建得到的class文件。
    • BOOT-INF/lib/,放置项目依赖的jar文件。
  • Spring Boot’s “NestedJarFile” Class

  • Launching Executable Jars
    文件META-INF/MANIFEST.MF的关键内容,样例如下:

    Main-Class: org.springframework.boot.loader.launch.JarLauncher
    Start-Class: net.jackieathome.MyApplication
    

    org.springframework.boot.loader.launch.JarLauncher为启动类。
    net.jackieathome.MyApplication为项目的主入口。

    常见的启动类,如下:

    • org.springframework.boot.loader.launch.JarLauncher
      BOOT-INF/lib/下加载项目依赖的jar文件。
    • org.springframework.boot.loader.launch.WarLauncher
      WEB-INF/lib/WEB-INF/lib-provided/下加载项目依赖的jar文件。
    • org.springframework.boot.loader.launch.PropertiesLauncher
      BOOT-INF/lib/下加载项目依赖的jar文件,其它特性可参考PropertiesLauncher Features
  • PropertiesLauncher Features

  • Executable Jar Restrictions
    注意事项:

    • 嵌入到目标文件中的jar的压缩方式。
    • 类加载器的选择,目前只支持Thread.getContextClassLoader()。使用其它方式加载类的组件,和SpringBoot无法自然集成。
  • Alternative Single Jar Solutions
    假如无法使用SpringBoot提供的uber jar或者fat jar方案,可行的替代方案,如下:

参考资料

标签:SpringBoot,boot,Jar,springframework,jar,文件格式,org,INF
From: https://www.cnblogs.com/jackieathome/p/18378756

相关文章

  • JAVA毕业设计|(免费)springboot共享汽车管理系统包含文档代码讲解
    收藏点赞不迷路 关注作者有好处编号:springboot118springboot共享汽车管理系统开发语言:Java数据库:MySQL技术:Spring+SpringMVC+MyBatis工具:IDEA/Ecilpse、Navicat、Maven1.系统展示2.万字文档展示第5章系统详细设计5.1管理员模块的实现5.1.1用户信息管理共享......
  • SpringBoot文档之Logging的阅读笔记
    市面上常见的日志记录框架,如下:LogbackLog4j2Log4j1.X官方维护已停止,基本上只有老旧项目在使用。JULCommonsLoggingSLF4J新项目启动时,通常集成SLF4J和Log4j2,代码中使用SLF4J的日志API来记录日志,使用Log4j2来管理日志的输出、管理日志文件。有一些项目会使用JUL或者Com......
  • SpringBoot文档之Web的阅读笔记
    Web基于SpringBoot框架开发应用,支持内嵌Tomcat/Jetty/Undertow/Netty来提供HTTP服务器。SpringBoot当前封装了如下组件:spring-boot-starter-webspring-boot-starter-webfluxServletWebServletWebApplications重要的注解:@Controller@RestController@RequestMa......
  • (javaweb)springboot的底层原理
    目录一.配置优先级二.Bean的管理1.获取bean​编辑​编辑2.bean作用域3.第三方bean三.SpringBoot原理 自动配置原理原理分析:conditional: 自动配置案例:(自定义starter分析)总结一.配置优先级//命令行参数的优先级最高二.Bean的管理1.获取bean注入ioc......
  • SpringBoot自定义校验
    通常情况,后端在业务层需要进行大量校验,写在业务层又不美观,而且需要重复编写,很是不方便,Spring提供的校验注解有时无法满足我们的需求,需要自定义校验规则,以校验手机号为例,下面开始自定义校验一、引入依赖引入Spring校验依赖包<dependency>  <groupId>org.springframework......
  • 基于Springboot考研学习交流系统的设计与实现(源码+LW+调试文档+讲解等)
     博主介绍:  ......
  • 基于Springboot少儿编程培训系统的设计与实现(源码+LW+调试文档+讲解等)
     博主介绍:  ......
  • 【源码+论文】springboot青年公寓服务平台
    系统包含:源码+论文所用技术:SpringBoot+Vue+SSM+Mybatis+Mysql免费提供给大家参考或者学习,获取资料请私聊我目录摘要 IAbstract II目录 III第一章课题背景及研究内容11.1课题背景 11.2开发目的和意义 11.3论文研究内容 1第二章相关技术 32.1B/S结构......
  • 【源码+论文】基于SpringBoot+Vue的乡政府管理系统
    系统包含:源码+论文所用技术:SpringBoot+Vue+SSM+Mybatis+Mysql免费提供给大家参考或者学习,获取资料请私聊我目录第1章绪论 11.1选题动因 11.2目的和意义 11.3论文结构安排 2第2章开发环境与技术 32.1MYSQL数据库 32.2Tomcat介绍 32.3vue技术 42.4Sp......
  • 基于SpringBoot+Vue房屋租赁系统的设计和实现(源码+文档+部署讲解)
    博主介绍:全网粉丝10W+,CSDN博客专家、全栈领域优质创作者,3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型。研究方向:SpringBoot、Vue.JS、MyBatisPlus、Redis、SpringSecurity、MySQL、小程序、Android、Uniapp等。博主说明:本文项目编号......