微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

构建包含跨架构编译的共享库的 JAR

如何解决构建包含跨架构编译的共享库的 JAR

我决定为 Java 创建自己的 sqlite 库。 sqlite 是一个 C 代码库。我想在尽可能多的平台上运行这个库。我的代码库的几个潜在用户拥有 HP-UX、AIX 和其他不常见的架构。

我已经使用 xerial/sqlite-jdbc 很长时间了,看到它是如何构建 JAR 的。它为每个架构启动多个 docker 容器,编译 sqlite 并将编译后的库文件写回 resources/ 目录。

它检测 JAR 正在运行的任何架构,加载正确的共享库。我不清楚这一步,所以一些关于如何可靠地检测架构并确保 JNI 找到正确的 .so/.dll 的指导会很有帮助。

创建 docker 镜像和Makefile是推荐的做法吗?有人有各种架构的起点,我可以在其中自定义 Makefile/source 文件夹吗?感觉每次出现新架构时(比如最近的 M1),都意味着很多此类项目的大量工作。

大多数情况下,在我投入大量时间之前,我只是确认没有其他 Java 库已经在使用的东西。任何额外的指导将不胜感激。希望这个问题足够具体。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。