我正在尝试使用Android Studio中的Room persistence库创建一个应用程序。问题是当我尝试运行时无效,它给了我这样的信息:
错误:任务':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 repo有关于这个问题的an issue。
在我的情况下,我通过重新安装没有/tmp
选项的noexec
来修复它。如果您不想(或不能),似乎建议设置GRADLE_OPTS=-Djava.io.tmpdir=/some/other/path. The issue linked above also mentions setting
org.sqlite.tmpdir`。不幸的是,通过在Android Studio中设置gradle opts,这些似乎都不适用于我。