当前的 JDK 版本 1.8 有一个错误,它阻止 Room 进行增量,看起来像 Current JDK version 1.8 has a bug that prevents Room from being incremental ,但是....
使用 zulu jdk 优化 m1 设备
/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
从 Android Studio 使用 sdk 时 m1 设备未优化
/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+ 不支持 android studio。
编辑 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
答案 0 :(得分:0)
我也遇到了这个问题。我的解决步骤是
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")
}
}