在mac上用rm-rf/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[\u update].jdk卸载jdk 7后,我遇到了一些问题
在mac book pro上用rm-rf/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[\u update].jdk卸载jdk 7后,我遇到了问题 我还安装了Java8,Intellij运行良好。但是任何运行java版本或mvn的尝试都会出现错误: dyld:无法加载插入的库'/library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home/jre/lib/libjsig.dylib',因为找不到映像 [1] 1216跟踪陷阱mvn 同时,我可以用IntelliJ构建所有项目 我甚至不能运行vim-我也犯了同样的错误。 所以,我的问题是: 1.卸载JDK的正确方法是什么?在mac上用rm-rf/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[\u update].jdk卸载jdk 7后,我遇到了一些问题,java,macos,Java,Macos,在mac book pro上用rm-rf/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[\u update].jdk卸载jdk 7后,我遇到了问题 我还安装了Java8,Intellij运行良好。但是任何运行java版本或mvn的尝试都会出现错误: dyld:无法加载插入的库'/library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home/jre/lib/libjsig.
2.在这种情况下,我应该如何恢复系统?查看您的.bash\u配置文件并尝试查找
export DYLD_INSERT_LIBRARIES=/usr/lib/libSaturnFE.dylib
export DYLD_FORCE_FLAT_NAMESPACE=1
或者类似的东西。这些可能会导致您遇到的问题。
尝试注释它们,然后用
exec bash
看看问题是否仍然存在。正如mattias在回答中提到的,您的问题源于bash启动文件中的一个命令,该命令告诉bash在尝试运行任何命令之前加载某些动态库 对于当前运行的终端,使用
unset DYLD\u INSERT\u库只能暂时解决此问题。因此,您应该通过首先运行该命令,然后使用vim
或nano
编辑.bash\u配置文件和和.bashrc
文件来永久解决问题
如果你看到一行写着
export DYLD_INSERT_LIBRARIES=/Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home/jre/lib/libjsig.dylib
只要拆下这条线。如果它在该库之外插入任何其他库,只需将此特定库从/library
删除到libsig.dylib
,包括以下:
(如果它是最后一个库,则前面的:
)
退出终端,再次运行,并确保问题已得到解决
您一直遵循的删除JDK的过程是Oracle建议的正确过程。问题是,在该机器的历史记录中,您或使用它的人将该库添加到DYLD\u INSERT\u LIBRARIES
环境变量中,这导致了问题。此外,这不会影响IntelliJ的原因是它没有通过bash
运行,因此bash
命令不会影响它
如果您想删除任何其他Java版本,您应该像以前一样,但是事先确保DYLD\u INSERT\u库
中没有任何内容引用/Library/Java/JavaVirtualMachines
您能显示echo$Java\u HOME
中的输出吗,echo$PATH
和echo$CLASSPATH
?echo$JAVA_HOME显示一条空行echo$PATH显示/usr/bin:/bin:/usr/sbin:/usr/local/bin:/usr/local/git/bin:/Users/andrew/globals/binecho$CLASSPATH shows/Users/andrew/globals/dev/JAVA/lib/JDK16/globalsdb.jarGood。下一步是运行env | grep DYLD
并告诉我们它找到了什么。exec bash带来了DYLD:无法加载插入的库'/library/Java/JavaVirtualMachines/jdk1.7.055.jdk/Contents/Home/jre/lib/libjsig.dylib',因为找不到图像听起来肯定像是你的.bash_配置文件或.bashrc中出错了。尝试查看你的.bash_档案,查看是否有任何奇怪之处。