Visualvm在Mac上无法检测到应用程序

4
当我在Netbeans上运行一个应用程序时,VisualVM无法检测到它。
在本地部分,它只显示VisualVM、GlassFish(pid 798)和Netbeans 6.9+(pid 787)。我创建了两个应用程序,一个在JSK 6上,另一个在SDK 7上,但是都无法被VisualVm检测到!
我想知道为什么它无法检测到这两个应用程序。
我的VisualVM详细信息如下:
Version: 

1.6.0_65 (Build 110613); platform 110613-unknown-revn

System: 

Mac OS X (10.7.5) , x86_64 64bit

Java: 

1.6.0_65; Java HotSpot(TM) 64-Bit Server VM (20.65-b04-462, mixed mode)

Vendor: 

Apple Inc., http://www.apple.com/

Environment: 

MacRoman; en_US (visualvm)

Userdir: 

/Users/jack/Library/visualvm/6u23

Clusters: 

/System/Library/Java/Support/VisualVM.bundle/Contents/Home/platform
/System/Library/Java/Support/VisualVM.bundle/Contents/Home/visualvm
/System/Library/Java/Support/VisualVM.bundle/Contents/Home/profiler

它们可能作为NetBeans VM的子进程运行吗? - Anders R. Bystrup
@AndersR.Bystrup 不好意思,Netbeans 下没有任何内容。 - J888
请测试一下,确保您没有意外使用苹果Java 6 JVM来运行程序,并且使用Oracle Java 7来运行jvisualvm。 - Thorbjørn Ravn Andersen
@ThorbjørnRavnAndersen 如何测试它? - J888
请查看正在运行的程序中的系统属性。 - Thorbjørn Ravn Andersen
对我来说,我只是在本地机器上缺少Java... - Ivan Aracki
1个回答

1

我建议您安装Oracle JDK并使用内嵌的jvisualvm。这对我很有效。

您可以将环境变量添加到/etc/bashrc中:

export JAVA_HOME=`/usr/libexec/java_home -v 1.7`  
launchctl setenv JAVA_HOME $JAVA_HOME

获取 Oracle JDK 的路径:echo $JAVA_HOME 或从终端运行 jvisualvm。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接