可执行 JAR 文件的限制

在使用 Spring Boot Loader 打包的应用程序时,您需要考虑以下限制:spring-doc.cadn.net.cn

  • ZIP 条目压缩: 嵌套 JAR 文件的 ZipEntry 必须通过使用 ZipEntry.STORED 方法来保存。 这是必需的,以便我们能够直接定位到嵌套 JAR 文件内的各个内容项。 嵌套 JAR 文件本身的内容仍可被压缩,外部 JAR 文件中的其他条目亦可被压缩。spring-doc.cadn.net.cn

  • 系统类加载器: 已启动的应用程序在加载类时应使用 Thread.getContextClassLoader()(大多数库和框架默认采用此方式)。 尝试使用 ClassLoader.getSystemClassLoader() 加载嵌套 JAR 中的类会失败。 java.util.Logging 始终使用系统类加载器。 因此,您应考虑采用其他日志记录实现。spring-doc.cadn.net.cn