首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Java应用程序中运行32位和64位本地库的混合

问在Java应用程序中运行32位和64位本地库的混合
EN

Stack Overflow用户
提问于 2015-12-07 13:24:30
回答 2查看 998关注 0票数 3

我们正在为Linux开发一个桌面Java应用程序,该应用程序使用本机.so库访问一系列外围设备(包括USB和串行端口代理)。一些供应商只提供32位库,而另一些供应商只提供64位版本。由于我们需要在应用程序中运行所有的外围设备,所以我们必须找到一种方法来运行这两种架构。

我们使用JNA连接到Linux文件系统中的本机库。当我们在64位JRE下运行软件时,尝试访问32位库时,会得到以下错误消息:

代码语言:javascript
复制
java.lang.UnsatisfiedLinkError: /usr/lib/jni/libsatprotocol.so: wrong ELF class: ELFCLASS32

在单个JRE中有任何方法运行这两种架构吗?我们可以在我们的64位JRE中添加某些32位JRE库吗?以不同的方式访问本机库是否有效?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-07 13:26:38

在单个JRE中有任何方法运行这两种架构吗?

不是的。他们使用不同的数据模型。

请参阅models

票数 3
EN

Stack Overflow用户

发布于 2015-12-07 13:32:58

如果您在64位上安装了一个JRE,您可以运行两个JVM,一个32位,一个64位。在一个JVM中两者都是不可能的。

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

https://stackoverflow.com/questions/34134659

复制
相关文章

相似问题

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