繁体   English   中英

使用gradle + ProGuard时出现NoSuchMethodError

[英]NoSuchMethodError when using gradle + ProGuard

我正在尝试为Gradle创建ProGuard任务,但是甚至卫兵的示例任务也因java.lang.NoSuchMethodError: proguard.gradle.ProGuardTask.getLogging()Lorg/gradle/logging/LoggingManagerInternal ,这是我的gradle.build

buildscript {
    repositories {
        flatDir dirs: 'proguard'
    }
    dependencies {
        classpath ':proguard:'
    }

}

subprojects{
    apply plugin: 'java'
    apply plugin: 'application'

    tasks.withType(Compile) {
        options.encoding = 'UTF-8'
}
sourceCompability = 1.7

dependencies{
    testCompile "junit:junit:4.11"
}

repositories{
    mavenCentral()
}


}

project(':csl'){
version = "0.1"

dependencies{
    runtime 'com.intellij:forms_rt:7.0.3'
    runtime group: 'com.jgoodies', name: 'jgoodies-common', version: '1.7.0'
    runtime group: 'com.jgoodies', name: 'jgoodies-forms', version: '1.7.2'
    runtime group: 'com.esotericsoftware', name: 'kryonet', version: '2.22.0-RC1'
    runtime group: 'com.esotericsoftware.kryo', name: 'kryo', version: '2.24.0'
    runtime group: 'org.apache.directory.studio', name: 'org.apache.commons.io', version: '2.4'

}


task obfuscate(type: proguard.gradle.ProGuardTask) {
    injars         'build/libs/csl.jar'
    outjars        'build/libs/csl-obf.jar'
//        libraryjars    "${System.getProperty('java.home')}/lib/rt.jar"
//        keep 'class org.gradle.** { *; }'
//        printmapping   'csl.map'
//        overloadaggressively
//        repackageclasses ''
//        allowaccessmodification
//
//        keep 'public class mypackage.csl.Main {  \
//    public static void main(java.lang.String[]);  \
//  }'
}

}

带注释的部分不会影响结果。 在./proguard中只有proguard.jar,或者Intellij IDEA与gradle和proguard集成了吗? 我发现的唯一信息是有关Android Studio的信息

将ProGuard从4.1升级到5.1后,我遇到了同样的问题。 gradle从1.9升级到2.2.1为我解决了。 最好的问候克里斯蒂安·泰斯特

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM