gpt4 book ai didi

java - 如何删除阴影 .jar 的 module-info.class 警告?

转载 作者:行者123 更新时间:2023-11-30 10:04:02 26 4
gpt4 key购买 nike

我正在使用 maven-shade 插件将一个 Spring Boot 应用程序打包到一个 uber jar 中。简单吧?好吧,除了最近我在 mvn clean package 的末尾收到以下警告:

[WARNING] Discovered module-info.class. Shading will break its strong encapsulation.

它实际上并没有破坏任何东西,但我是一个完美主义者,这让我抓狂。我该如何摆脱它?我尝试了很多事情都没有成功。

最佳答案

过滤掉阴影插件中的文件对我来说似乎工作正常。

这是我的 maven-shade-plugin配置看起来像:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>module-info.class</exclude>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>

关键行是 <exclude>module-info.class</exclude> .过滤器在任何 Artifact (*:* = 任何 Artifact )中看到它时都会排除该文件。 (其他三个 excludes 我用它来消除依赖项中签名文件的错误)

我没有注意到这样做有任何不良副作用,警告现在消失了!

关于java - 如何删除阴影 .jar 的 module-info.class 警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56063566/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com