我正在尝试使用 Android Studio 中的 Room 持久性库创建一个应用程序。问题是当我尝试运行时它不起作用,它给了我以下消息:
Error:Execution failed for task ':app:compileDebugJavaWithJavac'. > java.lang.UnsatisfiedLinkError: org.sqlite.core.NativeDB._open_utf8([BI)V
我正在关注此 https://www.youtube.com/watch?v=KAHAQunQkDE 的一切教程,并且它与视频中的人一起工作。也许是我应该安装的东西,但我不知道是什么。 (我仔细检查了视频上的每一步,一切正常,除了我的不运行)
最佳答案
在这种情况下,我的错误是由于 /tmp
使用 noexec
标志安装的。如果您使用的是 Linux,则可以使用 grep/tmp/proc/mounts
检查是否属于这种情况,以查看挂载选项。 sqlite JDBC 存储库有 an issue关于这个问题。
就我而言,我通过重新安装 /tmp
而不使用 noexec
选项来修复它。如果您不想(或不能),似乎建议设置 GRADLE_OPTS=-Djava.io.tmpdir=/some/other/path。上面链接的问题还提到了设置 org.sqlite.tmpdir`。不幸的是,通过在 Android Studio 中设置 gradle opts,这些似乎都不适合我。
关于java - 尝试在 Android Studio 上使用 Room,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49214994/