当前位置:首页 > 操作系统 > MacOs

java.lang.UnsatisfiedLinkError,mach-o,但Mac10.6.2上的体系结构错误

我试图在本地计算机上运行一个项目.

我试图加载这个jnilib文件,该文件是从Mac 10.6.2上该项目的运行实例获得的,

<code>System.load(lib.getAbsolutePath());
</code>

然后我抛出了这个异常:

<code>java.lang.UnsatisfiedLinkError, mach-o but wrong architecture
</code>

我已经用文件命令检查了jnilib:

<code>libScreenMatchProxy.jnilib: Mach-O dynamically linked shared library i386
</code>

我猜这是因为jnilib文件是32位编译的,而Mac10.6自带的Java是64位.因此,我转到Java Preference并将Java设置为首先使用32bit.但这没有用.

如上所述,此jnilib文件是从Mac上正在运行的项目实例复制而来的,因此应该可以使用.我不明白为什么它在已安装的应用程序中起作用,但在我的Eclipse中不起作用.

解决方法:

从“运行配置”向VM参数添加“ -d32”将强制Eclipse以32位模式调用Java.那将解决这个问题.


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐