2009-09-26 86 views
8

一些背景资料:破碎的Java的Mac 10.6

在Mac OS X 10.6的MacPorts使用,我有我的.bash_profile DYLD_LIBRARY_PATH集。

问题:

当我运行java -version我得到这个错误:

Error occurred during initialization of VM
Unable to load native library: libjava.jnilib

通过一种有益的方式forum thread,我发现这个问题是在我的“/选择一些文件/本地/ lib'目录由于我设置的DYLD_LIBRARY_PATH而导致麻烦。

当我从'/ opt/local/lib'中删除以libgif,libjpeg,libpng和libtiff开头的文件时,问题消失,'java -version'工作,但取决于这些文件的端口中断。

任何人都知道的方式,我可以保持文件,仍然可以让java正常工作?可能设置的java路径,我不知道该怎么做,我所有的尝试都失败了。

谢谢。

回答

11

请勿设置DYLD_LIBRARY_PATH。由于此env var,动态链接程序dyld正在找到/opt/local/lib/libjpeg.dylib等,而不是它所需的不同/System/Library/Frameworks//ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Resources/libJPEG.dylib

10

这似乎在OS X Lion的工作:

未设置DYLD_LIBRARY_PATH

0

似乎这个文件的保护问题,一个可能的原因是什么?在other thread查看我的帖子。

+1

请不要发布只是链接到其他职位的答案。在堆栈溢出时,答案应该实际上包含自己的问题解决方案。链接很棒,但只能用于提供更多信息。 – Pops 2011-11-09 20:04:10