gpt4 book ai didi

java - Maven、Proguard 和我不想要的 jar

转载 作者:搜寻专家 更新时间:2023-11-01 03:11:41 25 4
gpt4 key购买 nike

我正在使用 proguard-maven-plugin 混淆一个项目。一切正常,除了一件事:我不想要原始 jar,既不在目标目录中也不在存储库中部署。此刻,我得到了原始 jar 和混淆 jar 。以这种方式保留它会导致我们的构建服务器出现问题,因为这两个 Artifact 都会被部署,从而导致类路径中出现重复的接口(interface)。在构建服务器上使用黑名单不是一种选择。

有什么想法吗?

谢谢!

最佳答案

如果有人遇到此问题,以下配置对我有用。这会将原始 jar 重命名为 {final name}_proguard_base.jar 并用处理过的 jar 覆盖项目 jar。

        <plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>2.0.6</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
<configuration>
<proguardVersion>${proguard.version}</proguardVersion>
<obfuscate>false</obfuscate>
<injarNotExistsSkip>true</injarNotExistsSkip>
<injar>${project.build.finalName}.jar</injar>
<outputDirectory>${project.build.directory}</outputDirectory>
<addMavenDescriptor>true</addMavenDescriptor>
<attach>false</attach>
<libs>
<lib>${java.home}/lib/rt.jar</lib>
<lib>${java.home}/lib/jsse.jar</lib>
<lib>${java.home}/lib/jce.jar</lib>
</libs>
<proguardInclude>${project.basedir}/proguard.conf</proguardInclude>
<options>
<option>-printseeds ${project.build.directory}/proguard-seeds.txt</option>
<option>-printusage ${project.build.directory}/proguard-shrinkusage.txt</option>
<option>-printmapping ${project.build.directory}/proguard-mapping.txt</option>
<option>-printconfiguration ${project.build.directory}/proguard-config.txt</option>
<option>-dontobfuscate</option>
<option>-keepdirectories</option>
<option>-dontskipnonpubliclibraryclasses</option>
<option>-dontskipnonpubliclibraryclassmembers</option>
</options>
</configuration>
<dependencies>
<dependency>
<groupId>net.sf.proguard</groupId>
<artifactId>proguard-base</artifactId>
<version>${proguard.version}</version>
</dependency>
</dependencies>
</plugin>

关于java - Maven、Proguard 和我不想要的 jar ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8699936/

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