|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
|
|
<parent>
|
|
|
<groupId>org.springframework.boot</groupId>
|
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
|
<version>2.6.4</version>
|
|
|
</parent>
|
|
|
|
|
|
<groupId>com.renchao</groupId>
|
|
|
<artifactId>decompile</artifactId>
|
|
|
<version>1.0-SNAPSHOT</version>
|
|
|
|
|
|
<properties>
|
|
|
<maven.compiler.source>8</maven.compiler.source>
|
|
|
<maven.compiler.target>8</maven.compiler.target>
|
|
|
</properties>
|
|
|
|
|
|
<dependencies>
|
|
|
<dependency>
|
|
|
<groupId>org.springframework.boot</groupId>
|
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
|
</dependency>
|
|
|
</dependencies>
|
|
|
|
|
|
|
|
|
<build>
|
|
|
<plugins>
|
|
|
<!-- ProGuard混淆插件-->
|
|
|
<plugin>
|
|
|
<groupId>com.github.wvengen</groupId>
|
|
|
<artifactId>proguard-maven-plugin</artifactId>
|
|
|
<version>2.6.1</version>
|
|
|
<!-- <executions>-->
|
|
|
<!-- <execution>-->
|
|
|
<!-- <!– 混淆时刻,这里是打包的时候混淆–>-->
|
|
|
<!-- <phase>package</phase>-->
|
|
|
<!-- <!– <phase>compile</phase>–>-->
|
|
|
<!-- <goals>-->
|
|
|
<!-- <!– 使用插件的什么功能,当然是混淆–>-->
|
|
|
<!-- <goal>proguard</goal>-->
|
|
|
<!-- </goals>-->
|
|
|
<!-- </execution>-->
|
|
|
<!-- </executions>-->
|
|
|
<!-- <configuration>-->
|
|
|
<!-- <!– 是否将生成的PG文件安装部署–>-->
|
|
|
<!-- <attach>true</attach>-->
|
|
|
<!-- <!– 是否混淆–>-->
|
|
|
<!-- <obfuscate>true</obfuscate>-->
|
|
|
<!-- <!– 指定生成文件分类 –>-->
|
|
|
<!-- <attachArtifactClassifier>pg</attachArtifactClassifier>-->
|
|
|
<!-- <options>-->
|
|
|
<!-- <!– JDK目标版本1.8–>-->
|
|
|
<!-- <option>-target 1.8</option>-->
|
|
|
<!-- <!– 不做收缩(删除注释、未被引用代码)–>-->
|
|
|
<!-- <option>-dontshrink</option>-->
|
|
|
<!-- <!– 不做优化(变更代码实现逻辑)–>-->
|
|
|
<!-- <option>-dontoptimize</option>-->
|
|
|
<!-- <!– 不路过非公用类文件及成员–>-->
|
|
|
<!-- <option>-dontskipnonpubliclibraryclasses</option>-->
|
|
|
<!-- <option>-dontskipnonpubliclibraryclassmembers</option>-->
|
|
|
<!-- <!–不用大小写混合类名机制–>-->
|
|
|
<!-- <option>-dontusemixedcaseclassnames</option>-->
|
|
|
|
|
|
<!-- <!– 优化时允许访问并修改有修饰符的类和类的成员 –>-->
|
|
|
<!-- <option>-allowaccessmodification</option>-->
|
|
|
<!-- <!– 确定统一的混淆类的成员名称来增加混淆–>-->
|
|
|
<!-- <option>-useuniqueclassmembernames</option>-->
|
|
|
<!-- <!– 不混淆所有包名–>-->
|
|
|
<!-- <!–<option>-keeppackagenames</option>–>-->
|
|
|
|
|
|
<!-- <!– 需要保持的属性:异常,注解等–>-->
|
|
|
<!-- <option>-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod</option>-->
|
|
|
<!-- <!– 不混淆所有的set/get方法 –>-->
|
|
|
<!-- <!– <option>-keepclassmembers public class * {void set*(***);*** get*();}</option>–>-->
|
|
|
|
|
|
<!-- <!– 不混淆包下的所有类名,且类中的方法也不混淆–>-->
|
|
|
|
|
|
<!-- <option>-keep class com.proguard.ProguardDemo { <methods>; }</option>-->
|
|
|
<!-- <option>-keep class com.xxx.xxx.framework.** { *; }</option>-->
|
|
|
<!-- <!– <option>-keep class com.xxx.xxx.xxx.controller.** { <methods>; }</option>–>-->
|
|
|
<!-- <!– <option>-keep class com.xxx.xxx.xxx.dao.** { <methods>; }</option>–>-->
|
|
|
<!-- <!– <option>-keep class com.xxx.xxx.xxx.exception { <methods>; }</option>–>-->
|
|
|
<!-- <!– <option>-keep class com.xxx.xxx.xxx.model.** { <methods>; }</option>–>-->
|
|
|
|
|
|
|
|
|
<!-- </options>-->
|
|
|
<!-- <!–class 混淆后输出的jar包–>-->
|
|
|
<!-- <outjar>classes-autotest.jar</outjar>-->
|
|
|
<!-- <!– 添加依赖,这里你可以按你的需要修改,这里测试只需要一个JRE的Runtime包就行了 –>-->
|
|
|
<!-- <libs>-->
|
|
|
<!-- <lib>${java.home}/lib/rt.jar</lib>-->
|
|
|
<!-- </libs>-->
|
|
|
<!-- <!– 对什么东西进行加载,这里仅有classes成功,毕竟你也不可能对配置文件及JSP混淆吧–>-->
|
|
|
<!-- <injar>classes</injar>-->
|
|
|
<!-- <!– 输出目录–>-->
|
|
|
<!-- <outputDirectory>${project.build.directory}</outputDirectory>-->
|
|
|
<!-- </configuration>-->
|
|
|
</plugin>
|
|
|
</plugins>
|
|
|
</build>
|
|
|
|
|
|
</project> |