首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Mac M1上解决由:java.lang.Exception引起的问题: os.name=Mac和os.arch=aarch64没有本机库

如何在Mac M1上解决由:java.lang.Exception引起的问题: os.name=Mac和os.arch=aarch64没有本机库
EN

Stack Overflow用户
提问于 2022-03-28 00:17:58
回答 3查看 2.4K关注 0票数 5

我在我的build.gradle中用下面的代码解决了这个问题

代码语言:javascript
运行
复制
  allprojects {
configurations.all {
    resolutionStrategy {
        force 'org.xerial:sqlite-jdbc:3.34.0'
      }
   }
 } 

但这对我正在做的项目有影响。由于某些原因,它没有使用在项目上实现的reason。

当我删除上面的代码时,我会得到这个错误。

有没有更好的方法来解决这个问题。

代码语言:javascript
运行
复制
Caused by: java.lang.ExceptionInInitializerError
at androidx.room.processor.DatabaseProcessor.doProcess(DatabaseProcessor.kt:82)
at androidx.room.processor.DatabaseProcessor.process(DatabaseProcessor.kt:57)
at androidx.room.RoomProcessor$DatabaseProcessingStep.process(RoomProcessor.kt:134)
at com.google.auto.common.BasicAnnotationProcessor.process(BasicAnnotationProcessor.java:330)
at com.google.auto.common.BasicAnnotationProcessor.process(BasicAnnotationProcessor.java:181)
at org.jetbrains.kotlin.kapt3.base.incremental.IncrementalProcessor.process(incrementalProcessors.kt)
at org.jetbrains.kotlin.kapt3.base.ProcessorWrapper.process(annotationProcessing.kt:161)
at 

jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:980) . 39

代码语言:javascript
运行
复制
Caused by: java.lang.Exception: No native library is found for os.name=Mac and 
os.arch=aarch64. path=/org/sqlite/native/Mac/aarch64
at org.sqlite.SQLiteJDBCLoader.loadSQLiteNativeLibrary(SQLiteJDBCLoader.java:333)
at org.sqlite.SQLiteJDBCLoader.initialize(SQLiteJDBCLoader.java:64)
at androidx.room.verifier.DatabaseVerifier.<clinit>(DatabaseVerifier.kt:68)
... 47 more
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-04-16 23:24:46

更新您的房间库

代码语言:javascript
运行
复制
   implementation "androidx.room:room-runtime:2.4.2"
   implementation "androidx.room:room-ktx:2.4.2"
   kapt "androidx.room:room-compiler:2.4.2"

这是参考文献

票数 4
EN

Stack Overflow用户

发布于 2022-06-08 10:04:32

在我的例子中,更新到2.4.2只要求我将SDK版本更新为31,并出现更多的问题。我通过选择

Android Studio > Preferences > Build, Execution, Deployment > Build Tools > Gradle

导航到Gradle项目节,并单击Gradle JDK下拉选项字段

选择Liberica-1.8 (如果在下拉字段中不可用,您可以在这里下载和安装https://bell-sw.com/pages/downloads/)。

再次运行这个项目,瞧!

票数 1
EN

Stack Overflow用户

发布于 2022-05-06 03:41:19

yeb运行我的案件(我的mac迷你m1) =>>> implementation "androidx.room:room-runtime:2.4.2" implementation "androidx.room:room-ktx:2.4.2"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71641264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档