配置gradle插件
gradle配置ProGuard插件
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'net.sf.proguard:proguard-gradle:6.2.2'
}
}
添加混淆task
// idea 依赖所在目录
def ideaPath = "xxx"
task proguard(type: proguard.gradle.ProGuardTask, dependsOn: jar) {
// 输出混淆前->混淆后的映射
printmapping "$buildDir/mapping.txt"
// 混淆规则文件
configuration 'proguard-rules.pro'
// 项目依赖jar
libraryjars configurations.runtimeClasspath.collect()
// jdk 依赖,区分jdk8 前后版本
if (System.getProperty('java.version').startsWith('1.')) {
libraryjars "${System.getProperty('java.home')}/lib/rt.jar"
} else {
libraryjars "${System.getProperty('java.home')}/jmods/java.base.jmod", jarfilter: &