Spring Boot Maven插件和图层

问题描述

我有以下Maven项目设置。我有一个带有许多子模块的父模块,其中一个是Spring Boot应用程序。我正在尝试为该子模块构建一个“分层”的Spring Boot应用程序jar,但是无法。

作为Spring Boot应用程序的子模块具有一个依赖项管理部分,其中包括spring-boot-Dependencies,如此处所述:https://docs.spring.io/spring-boot/docs/2.1.11.BUILD-SNAPSHOT/reference/html/using-boot-build-systems.html。该子模块的“ build”元素声明了spring boot maven插件,如下所示:https://docs.spring.io/spring-boot/docs/current/maven-plugin/reference/html/#repackage-layered-jars-tools

当“图层”被禁用时,我会得到一个“胖” jar和一个包含文件文件夹结构。但是,当启用“图层”时,我得到一个损坏的胖子。损坏的jar具有与非分层jar相同的文件夹结构,但是另外还有一个名为“ BOOT-INF(1)”的空文件夹,winzip表示这是文件名无效的结果。分层jar中的BOOT-INF文件夹本身看起来与非分层jar相同(除了新的classpath.idx和layers.idx文件),但没有任何分层。有趣的是,打开分层功能时,BOOT-INF文件夹下的classpath.idx和layers.idx文件具有正确的条目。当我提供自己的自定义layers.xml文件时,除layers.idx与自定义layers.xml文件中的图层匹配外,我得到的结果相同。

由于公司的限制,我无法发布实际的代码。有人遇到过类似的问题吗?我尝试了-X maven调试选项,但是在“重新包装”阶段我无法发现问题所在。我正在使用Spring Boot 2.3.2。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)