使用 android-gradle-plugin 3.6.0 进行 IR 转换期间出现 NullPointerException
NullPointerException during IR Conversion with android-gradle-plugin 3.6.0
发布构建抛出(使用 gradle installRelease
时):
NullPointerException during IR Conversion
升级后 com.android.tools.build:gradle 从 3.5.3 升级到 3.6.0。
从 ~/.gradle/caches/.../jetified-lib.jar
转换 jetified lib 时发生错误
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:minifyReleaseWithR8'.
> com.android.tools.r8.CompilationFailedException: Compilation failed to complete
NullPointerException during IR Conversion
at com.android.tools.r8.utils.y0.a(:21)
at com.android.tools.r8.utils.O.a(:51)
... 97 more
有人知道如何解决这个问题吗?
编辑:
查看 https://developer.android.com/studio/releases/gradle-plugin 将此添加到 gradle.properties
android.useNewApkCreator=false
没有帮助...
您应该检查完整的错误日志,它可能会让您了解导致错误的原因。
这可能与您的问题不完全相关,但我在升级后遇到了同样的错误,这是由堆分析插件引起的。
Error: /Users/.../.gradle/caches/transforms-2/files
2.1/f09a86d8ecd2a3b98534de60989936ee/jetified-heap-android-client-1.1.1-runtime.jar:com/heapanalytics/android/internal/CommonProtos$DeviceInfo.class
,java.lang.Objectcom.heapanalytics.android.internal.CommonProtos$DeviceInfo
.dynamicMethod(com.google.protobuf
.GeneratedMessageLite$MethodToInvoke, java.lang.Object, java.lang.Object)
NullPointerException during IR Conversion
修复程序在 Google r8 存储库中可用。在 Google 发布 AGP 3.6.2 或更高版本之前,您必须使用最新的 r8 版本覆盖 gradle 构建文件中的 r8 AGP 依赖项:
buildscript {
repositories {
maven {
url 'https://storage.googleapis.com/r8-releases/raw'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:X.Y.Z'
classpath 'com.android.tools:r8:1.6.78' // MUST BE AFTER AGP
}
}
或降级到 AGP 3。5.x
发布构建抛出(使用 gradle installRelease
时):
NullPointerException during IR Conversion
升级后 com.android.tools.build:gradle 从 3.5.3 升级到 3.6.0。
从 ~/.gradle/caches/.../jetified-lib.jar
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:minifyReleaseWithR8'.
> com.android.tools.r8.CompilationFailedException: Compilation failed to complete
NullPointerException during IR Conversion
at com.android.tools.r8.utils.y0.a(:21)
at com.android.tools.r8.utils.O.a(:51)
... 97 more
有人知道如何解决这个问题吗?
编辑:
查看 https://developer.android.com/studio/releases/gradle-plugin 将此添加到 gradle.properties
android.useNewApkCreator=false
没有帮助...
您应该检查完整的错误日志,它可能会让您了解导致错误的原因。
这可能与您的问题不完全相关,但我在升级后遇到了同样的错误,这是由堆分析插件引起的。
Error: /Users/.../.gradle/caches/transforms-2/files
2.1/f09a86d8ecd2a3b98534de60989936ee/jetified-heap-android-client-1.1.1-runtime.jar:com/heapanalytics/android/internal/CommonProtos$DeviceInfo.class
,java.lang.Objectcom.heapanalytics.android.internal.CommonProtos$DeviceInfo
.dynamicMethod(com.google.protobuf
.GeneratedMessageLite$MethodToInvoke, java.lang.Object, java.lang.Object)
NullPointerException during IR Conversion
修复程序在 Google r8 存储库中可用。在 Google 发布 AGP 3.6.2 或更高版本之前,您必须使用最新的 r8 版本覆盖 gradle 构建文件中的 r8 AGP 依赖项:
buildscript {
repositories {
maven {
url 'https://storage.googleapis.com/r8-releases/raw'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:X.Y.Z'
classpath 'com.android.tools:r8:1.6.78' // MUST BE AFTER AGP
}
}
或降级到 AGP 3。5.x