gpt4 book ai didi

java - 如何在 Mac OS X 上以 32 位模式运行绑定(bind)到 .app 的 java 应用程序?

转载 作者:行者123 更新时间:2023-11-30 12:00:37 24 4
gpt4 key购买 nike

我在 Windows Vista 上编写了一个 java 应用程序,它使用 Bonjour 并且运行良好。当我在 Mac OS X 10.5.8 上运行它并将所有更新安装为 .jar 文件时,它也能完美运行。但是当我使用 Jar Bundler 创建一个包时它失败了

"Uncaught exception in main method: java.lang.UnsatisfiedLinkError: /usr/lib/java/libjdns_sd.jnilib: no suitable image found. Did find: /usr/lib/java/libjdns_sd.jnilib: no matching architecture in universal wrapper".

我用谷歌搜索并意识到问题是,Bonjour 协议(protocol)没有 64 位实现。所以,我需要 .app 像 .jar 一样以 32 位模式运行。
当我运行 jar 文件时:

java.version = 1.5.0_20 ; os.arch = i386 ; sun.arch.data.model = 32  

当我运行 .app 时:

java.version = 1.5.0_20 ; os.arch = x86_64 ; sun.arch.data.model = 64 

我在 Jar Bundler 中将 JVM 版本设置为 1.5* ,在 .app 包中尝试了 Info.plist 中的许多选项,例如

<key>JVMArchs</key>  
<array>
<string>i386</string>
</array>
<key>LSArchitecturePriority</key>
<array>
<string>i386</string>
</array>

但它什么都不做。

有人知道决定吗?

最佳答案

只需添加到 Info.plist

JVMArchsi386

关于java - 如何在 Mac OS X 上以 32 位模式运行绑定(bind)到 .app 的 java 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1794698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com