JDK 1.7_21上的VisualVM配置文件因“拒绝访问”而崩溃

时间:2013-10-02 04:34:44

标签: java jvm

可能你可以帮我解决这个问题。

Profiler与“拒绝访问”消息崩溃,然后我为任何本地应用程序启动它。在日志文件中,我发现:

java.io.IOException: Отказано в доступе
    at sun.tools.attach.WindowsVirtualMachine.openProcess(Native Method)
    at sun.tools.attach.WindowsVirtualMachine.<init>(WindowsVirtualMachine.java:56)
    at sun.tools.attach.WindowsAttachProvider.attachVirtualMachine(WindowsAttachProvider.java:69)
    at com.sun.tools.attach.VirtualMachine.attach(VirtualMachine.java:213)
    at org.netbeans.modules.profiler.NetBeansProfiler.loadAgentIntoTargetJVM(NetBeansProfiler.java:762)
    at org.netbeans.modules.profiler.NetBeansProfiler.attachToApp(NetBeansProfiler.java:734)
    at com.sun.tools.visualvm.profiler.ApplicationProfilerView$MasterViewSupport.startProfiling(ApplicationProfilerView.java:309)
    at com.sun.tools.visualvm.profiler.ApplicationProfilerView$MasterViewSupport.access$900(ApplicationProfilerView.java:140)
    at com.sun.tools.visualvm.profiler.ApplicationProfilerView$MasterViewSupport$3.run(ApplicationProfilerView.java:262)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1372)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1952)

应用程序在相同的JVM HotSpot 1.07.0_21 x32上运行(来自JDK 1.6的VisualVM工作正常),只使用下一个选项:

-client -Xmx1524M

有什么建议吗?

UPD:操作系统是WindowsXP sp3 x32

2 个答案:

答案 0 :(得分:2)

您检查了他们的troubleshooting section吗?

特别是:

  

%TMP%\ hsperfdata_username文件夹的权限不足 - 制作   确定你能够在目录中创建一个文件,并最终   更新完整文件夹访问权限。或者你可以   只需重新创建应自动设置正确的文件夹   访问权限。有关详细信息,请参阅此forums.sun.com主题。

答案 1 :(得分:0)

对我来说,创建堆转储时出现以下错误:

[com.sun.tools.visualvm.attach.AttachModelImpl]: takeHeapDump java.io.IOException: Access is denied

我可以手动访问此文件夹%TMP%\hsperfdata_username。 因此,我想到了以管理员模式启动visualVM,它解决了该问题。

感谢@Lorenzo的投入。