gpt4 book ai didi

java - 混淆代码时如何使用proguard-maven-plugin过滤所有maven依赖?

转载 作者:行者123 更新时间:2023-12-01 17:58:07 24 4
gpt4 key购买 nike

我在maven的pom.xml中写了需要的maven依赖,现在添加proguard-maven-plugin来混淆代码,希望不要混淆pom.xml中写的依赖

该项目依赖于很多maven jar。有没有直接过滤所有maven jar的配置方法?

如何修改 pom.xml 或 proguard.cfg?

<小时/>

我的 pom.xml 的一部分

依赖关系:

<dependencies>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>${spring-data-redis-version}</version>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>${commons-pool2-version}</version>
</dependency>
</dependencies>

插件:

                <plugin>
<dependencies>
<dependency>
<groupId>net.sf.proguard</groupId>
<artifactId>proguard-base</artifactId>
<version>6.0.2</version>
<scope>runtime</scope>
</dependency>
</dependencies>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>2.0.14</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
<configuration>
<attach>true</attach>
<attachArtifactClassifier>pg</attachArtifactClassifier>
<injar>original-${project.build.finalName}.jar</injar>
<outjar>original-${project.build.finalName}-pg.jar</outjar>
<obfuscate>true</obfuscate>
<proguardInclude>../proguard.cfg</proguardInclude>
</configuration>
</plugin>

在混淆代码时如何过滤这两个依赖项?

最佳答案

我最终在配置文件中添加了以下参数来解决问题

-keep interface !com.kdgz.monitor.** {*;}
-keep class !com.kdgz.monitor.** {*;}

我不知道这是否是标准解决方案,但它确实解决了我的问题。还有一些其他的小问题。我查的方法原理不太明白,但是可以解决问题。

关于java - 混淆代码时如何使用proguard-maven-plugin过滤所有maven依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60681508/

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