我最近为我的 64 位 Mac (OS X 10.6.8) 编译了 Mozilla JSS(Java 网络安全服务),以便在 Java 项目中使用。该项目是使用 Eclipse 创建的。
通过在 Java 构建路径上定义本机库路径,我已将已编译的 JSS 库的路径添加到 Eclipse 项目中。
但是,我在 libsmime3.dylib 上收到 UnsatisfiedLinkError,即使它与为 libjss4.jnilib 定义的本机库路径相同。
java.lang.UnsatisfiedLinkError:/Users//nss-jss/mozilla/dist/Darwin10.8.0_64_OPT.OBJ/lib/libjss4.jnilib:库未加载:@executable_path/libsmime3.dylib 引用自:/Users//nss- jss/mozilla/dist/Darwin10.8.0_64_OPT.OBJ/lib/libjss4.jnilib 原因:找不到图像
在谷歌搜索了一下(并尝试了几种不同的东西)之后,我认为由于我对 Mac 不太了解的原因,dylib 扩展可能需要是 jnilib。我没有更改 makefile 来创建 jnilib 文件而不是 dylib 文件,只是更改了扩展名。那没有用。
由于 JSS 有很多很多的 dylib 文件,我希望更改 makefile 需要一些努力。
在我花了很多时间尝试修改之前,我想我会检查一下 SO 看看是否有什么可以帮助我的。我没有找到任何可以解决我的问题的东西,因此这篇文章。
我将非常感谢任何关于 JSS 的建议,因为我为 UnsatisfiedLinkError 找到的解决方案都适用于相关项目。
问候,托德