使用applyMapping将导致编译异常,如:
R8: 'boolean readField(int)' already has a mapping失败:生成失败,出现异常。
问题所在:任务':app:transformClassesAndResourcesWithR8ForRelease'.的执行失败com.android.tools.r8.CompilationFailedException:编译未能完成
我的Android插件的版本是3.5.3,我发现这是R8的问题。因为当禁用R8时,applyMapping可以正常工作,启用R8,它就不能工作。我喜欢由Mapping.txt生成的R8具有这样的重复方法:
1:1:boolean readField(int):0 -> a
2:2:boolean readField(int):0:0 -> a如果移除其中的一个,它就能正常工作。
发布于 2020-01-20 12:15:27
您使用的是较早版本的R8,它太急切地报告映射文件中的错误。通过将以下内容添加到顶级build.gradle文件中,尝试使用旧版本:
buildscript {
repositories {
maven {
url 'http://storage.googleapis.com/r8-releases/raw'
}
}
dependencies {
classpath 'com.android.tools:r8:1.6.60' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:X.Y.Z' // Your current AGP version.
}}
这应该有助于解决你的问题。
https://stackoverflow.com/questions/59660620
复制相似问题