破解Java Mac 10.6

时间:2009-09-26 23:59:54

标签: java macos osx-snow-leopard macports

一些背景知识:

在使用Macports的Mac OS X 10.6上,我在.bash_profile中设置了DYLD_LIBRARY_PATH

问题:

当我运行java -version时,我收到此错误:

  

VM初始化期间发生错误   无法加载本机库:libjava.jnilib

通过一个有用的forum thread,我发现问题是我的'/ opt / local / lib'目录中的某些文件因我设置的DYLD_LIBRARY_PATH而导致问题。

当我从'/ opt / local / lib'中删除以libgif,libjpeg,libpng和libtiff开头的文件时,问题就消失了,`java -version'可以工作,但依赖这些文件的端口会中断。 / p>

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

感谢。

3 个答案:

答案 0 :(得分: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

答案 1 :(得分:10)

这似乎适用于OS X Lion:

取消设置DYLD_LIBRARY_PATH

答案 2 :(得分:0)

这似乎是导致文件保护问题的一个可能原因?请参阅此other thread中的帖子。