首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KSP机房处理器在CI机上发生故障

KSP机房处理器在CI机上发生故障
EN

Stack Overflow用户
提问于 2022-04-27 12:58:04
回答 1查看 143关注 0票数 1

我已经把房间搬到ksp了。在本地机器(Mac)上一切都很好,但是在我们的Linux机器上,我得到了一个错误,这个应用程序没有编译。有什么想法,为什么会发生,以及如何解决?

堆栈跟踪:

代码语言:javascript
复制
Task :app:kspCustomQaKotlin

e: java.lang.ExceptionInInitializerError

at androidx.room.processor.DatabaseProcessor.doProcess(DatabaseProcessor.kt:82)

...

Caused by: java.lang.Exception: No native library found for os.name=Linux, os.arch=x86_64, paths=[/org/sqlite/native/Linux/x86_64:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib]

at org.sqlite.SQLiteJDBCLoader.loadSQLiteNativeLibrary(SQLiteJDBCLoader.java:389)

at org.sqlite.SQLiteJDBCLoader.initialize(SQLiteJDBCLoader.java:68)

at androidx.room.verifier.DatabaseVerifier.<clinit>(DatabaseVerifier.kt:70)
EN

回答 1

Stack Overflow用户

发布于 2022-05-23 16:42:26

DatabaseVerifier是房间编译器的一部分,它使用本地SQLite实例来验证SQLite查询的正确性。它通过在机器上对SQLite的内存实例执行查询来进行验证。这与KSP本身无关。

产生错误的原因

代码语言:javascript
复制
Caused by: java.lang.Exception: No native library found for os.name=Linux, os.arch=x86_64, paths=[/org/sqlite/native/Linux/x86_64:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib]

说它无法在您的机器上找到sqlite二进制文件。你试过手动安装吗?您还可以编写小的gradle任务,在您的CI上运行时检查sqlite二进制文件。

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

https://stackoverflow.com/questions/72029217

复制
相关文章

相似问题

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