我在maven的pom.xml中编写了所需的maven依赖项,现在我添加了proguard-maven-plugin来混淆代码,并希望不要混淆用pom.xml编写的依赖项。
这个项目依赖于大量的maven jars。是否有一种直接过滤所有maven jars的配置方法?
如何修改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>当我混淆代码时,如何过滤这两个依赖项?
发布于 2020-03-30 01:21:19
最后,我将以下参数添加到配置文件中以解决这个问题
-keep interface !com.kdgz.monitor.** {*;}
-keep class !com.kdgz.monitor.** {*;}我不知道这是否是标准的解决方案,但它确实解决了我的问题。还有其他一些小问题。我不明白我所寻找的方法的原理,但它能解决这个问题。
https://stackoverflow.com/questions/60681508
复制相似问题