如何在安卓工作室m1上使用zulu-8.jdk和kapt



当前JDK 1.8版本存在一个错误,该错误阻止了Room的增量,如下所示当前JDK 1.8版本有一个错误,它阻止了Room的增量,但是。。。。

使用zulu jdk 优化m1设备

/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home

m1设备在使用安卓工作室的sdk时未优化

/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home

在我使用kapt'androidx.room:room-compiler:2.3.0'之前,我已经激活了插件id 'kotlin-kapt'

那么,如果没有error bug that prevents Room from being incremental,我如何使用zulu sdk而不是android jdk?有什么窍门吗?

我的设备在使用android jdk时出现滞后、发热和电池耗尽的情况。

Current JDK version 1.8.0_292-b10 has a bug(https://bugs.openjdk.java.net/browse/JDK-8007720)that prevents Room from being incremental. Consider using JDK 11+ or the embedded JDK shipped with Android Studio 3.5+.,但我所研究的jdk 11+在安卓工作室上不支持。

编辑1我试过使用Zulu-11.jdk./gradlew assembleDebug --stacktrace异常是相同的

java.lang.Exception: No native library is found for os.name=Mac and os.arch=aarch64. path=/org/sqlite/native/Mac/aarch64

我也遇到了这个问题。我的解决步骤是

  • 使用Zulu SDK 11
  • 在应用程序gradle上添加依赖项kapt "org.xerial:sqlite-jdbc:3.34.0"(如果没有使用zulu jdk 11解决(

如果您使用Hilt,请在应用程序Gradle文件的末尾添加以下kapt编译选项

kapt {
javacOptions {
// These options are normally set automatically via the Hilt Gradle plugin, but we
// set them manually to workaround a bug in the Kotlin 1.5.20
option("-Adagger.fastInit=ENABLED")
option("-Adagger.hilt.android.internal.disableAndroidSuperclassValidation=true")
}
}

最新更新