jvisualvm 去哪儿了?

新手上路,请多包涵

我正在运行 Mac OSX Snow Leopard。

我一直使用 Mac OSX 的常规软件更新功能来更新 Java。

我过去使用 Java jvisualvm 工具取得了巨大成功。

今天早上,我像往常一样在命令行中输入 jvisualvm 。我收到以下错误:

  $ jvisualvm
 Unable to locate an executable at "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/jvisualvm" (-1)

所有其他 Java 工具( javajavacjps 等)工作正常。

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin 确实不包含 jvisualvm (突然)。

/usr/libexec/java_home 产量:

 $ /usr/libexec/java_home
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

什么鬼?

原文由 Laird Nelson 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 853
2 个回答

看起来像是链接的混合; /usr/bin/jvisualvm 符号链接指向不存在的东西(正如人们在上面指出的那样)。显然 jvisualvm 可执行文件(存根)存在,现在解决这个问题的方法是执行:

 cd /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin

sudo ln -s /System/Library/Java/Support/VisualVM.bundle/Contents/Home/bin/jvisualvm .

这需要 sudo 权限并创建缺少的符号链接,指向 VisualVM 包。不知道为什么会这样,但升级到最新的 XCode 4.5.2 并没有自动为我修复这个问题。我正在运行 MacOS X 10.7.5 和 java 1.6.0_37

原文由 thanosa75 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题