mar*_*cht 7 android gradle build.gradle
我似乎遇到的问题是我似乎无法将lombok排除在apk之外.我尝试通过创建这样的提供配置来实现:
configurations {
provided
}
sourceSets {
main { compileClasspath += configurations.provided }
}
Run Code Online (Sandbox Code Playgroud)
然后像这样添加依赖项:
dependencies {
provided ‘org.projectlombok:lombok:0.11.8?
}
Run Code Online (Sandbox Code Playgroud)
但我仍然收到这个错误:
Error: duplicate files during packaging of APK <myapp>.apk
Path in archive: LICENSE
Origin 1: /<home>/.gradle/caches/artifacts-24/filestore/org.projectlombok/lombok/0.11.8/jar/e43ce2be16d8990568a4182c0bf996ad3ff0ba42/lombok-0.11.8.jar
Origin 2: /<home>/.gradle/caches/artifacts-24/filestore/org.sonatype.sisu.inject/cglib/2.2.1-v20090111/jar/7ce5e983fd0e6c78346f4c9cbfa39d83049dda2/cglib-2.2.1-v20090111.jar
:packageRelease FAILED
Run Code Online (Sandbox Code Playgroud)
我尝试过使用lombok-api.jar,然后在执行dex时会导致一些关于AccessLevel注释的问题.
这表明它包括lombok jar文件到apk.这不应该发生,有什么建议吗?
您不能使用sourceSets,因为我们使用自定义的.您必须执行以下操作:
android.applicationVariants.each { variant ->
variant.javaCompile.classpath += configurations.provided.
}
Run Code Online (Sandbox Code Playgroud)
但是,应该可以从我们的"package"配置中取消依赖性(它取代了"运行时"配置.)我将调查它.
| 归档时间: |
|
| 查看次数: |
1693 次 |
| 最近记录: |