java 模块中的 Lombok 有助于 apk 中的方法计数

Lombok in java module contributing to method count in apk

我在 Android Studio 项目中的纯 java 模块中使用 Lombok。这是模块的 build.gradle:

apply plugin: 'java'
apply plugin: 'war'

targetCompatibility = '1.7'
sourceCompatibility = '1.7'

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    providedCompile "org.projectlombok:lombok:1.12.6"
    testCompile 'junit:junit:4.12'
    testCompile 'org.assertj:assertj-core:1.7.0'
    compile 'com.google.code.gson:gson:2.7'
}

然而,当我构建我的 android 模块时,生成的 APK 具有来自 lombok 的这些方法计数,而它应该具有 none.

lombok: 4099
        bytecode: 85
        core: 308
            debug: 18
            handlers: 8
            runtimeDependencies: 15
        delombok: 253
            ant: 22
        eclipse: 820
            agent: 223
            handlers: 387
        experimental: 16
        extern: 6
            apachecommons: 1
            java: 1
            log4j: 2
            slf4j: 2
        installer: 286
            eclipse: 109
        javac: 970
            apt: 132
            handlers: 317
            java6: 24
            java7: 24
            java8: 26
        libs: 996
            com: 61
                zwitserloot: 61
                    cmdreader: 61
            org: 935
                objectweb: 935
                    asm: 935
                        commons: 405
                        signature: 41
                        tree: 199
        patcher: 316
            equinox: 18
            inject: 7
            scripts: 150

lombok 有什么问题吗?我是如何使用 providedCompile 或 Android/Gradle 构建系统的?

您应该改用 compileOnly

披露:我是 lombok 开发人员,而不是 gradle 专家。