問題發(fā)生起因:換電腦(換到Mac-Mini-Apple M1)上
項(xiàng)目相關(guān)配置版本:
ext {
// Sdk and tools
compileSdkVersion = 30
minSdkVersion = 23
targetSdkVersion = 29
// App dependencies
kotlin_version = '1.5.30'
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
還有個(gè)Gradle版本:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip
錯(cuò)誤內(nèi)容:
Execution failed for task ':UmeLibrary:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
> java.lang.reflect.InvocationTargetException (no error message)
根據(jù)下面的提示,我打印出具體錯(cuò)誤:
# [Caused by: java.lang.Exception: No native library is found for os.name=Mac and os.arch=aarch64\. path=/org/sqlite/native/Mac/aarch64](https://stackoverflow.com/questions/68884589/caused-by-java-lang-exception-no-native-library-is-found-for-os-name-mac-and-o)
這個(gè)錯(cuò)誤的意思大概是因?yàn)橐驗(yàn)閟qlite的jar包不適配arm 也就是Mac m1,所以解決方案是換jdk,我使用的AndroidStudio,于是我使用[command+;]打開
image.png
從中選擇

image.png
點(diǎn)擊確認(rèn),一步步解決我標(biāo)題報(bào)出來的錯(cuò)誤問題了。
這個(gè)錯(cuò)誤我找了整整一天,最后感謝StackOverflow上的一位外國網(wǎng)友提供的建議。
如果你使用的是Kotlin依賴,千萬不要相信網(wǎng)上直接把kapt換成annotationProcessor
這樣是解決不了問題的,如下(錯(cuò)誤示范):
kapt "androidx.room:room-compiler:${rootProject.room_version}"
轉(zhuǎn)成
annotationProcessor "androidx.room:room-compiler:${rootProject.room_version}"