V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
fangwenshan
V2EX  ›  问与答

32 位 jdk1.7 使用 VisualVM1.3.8 为何会报错

  •  
  •   fangwenshan · 2015-10-13 15:43:07 +08:00 · 1153 次点击
    这是一个创建于 3146 天前的主题,其中的信息可能已经有所发展或是发生改变。

    系统环境:

    • win7 旗舰版 64 位
    • JDK 1.7 build 1.7.0-b147
    • JDK 1.7 64bit build 1.7.0_79-b15
    • VisualVM 1.3.8

    运行程序:

    • 32 位的 Spring Tool Suite 3.7.1.RELEASE (就当成是 Eclipse 就行了)
    • 64 位的 Android Studio 1.3.1

    使用步骤:

    直接从官网下载,然后直接运行,打开 STS 后,会看到“ eclipse ”点击之后无反应,看日志报下列错误:

    java.lang.NoSuchMethodError: sun.tools.attach.HotSpotVirtualMachine.executeJCmd(Ljava/lang/String;)Ljava/io/InputStream;
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$LocalVirtualMachine.loadManagementAgentViaJcmd(JmxModelImpl.java:798)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$LocalVirtualMachine.loadManagementAgent(JmxModelImpl.java:752)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$LocalVirtualMachine.startManagementAgent(JmxModelImpl.java:728)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$ProxyClient.tryConnect(JmxModelImpl.java:536)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$ProxyClient.connect(JmxModelImpl.java:506)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl.connect(JmxModelImpl.java:234)
    at com.sun.tools.visualvm.jmx.impl.JmxModelImpl.<init>(JmxModelImpl.java:204)
    at com.sun.tools.visualvm.jmx.impl.JmxModelProvider.createModelFor(JmxModelProvider.java:64)
    at com.sun.tools.visualvm.jmx.impl.JmxModelProvider.createModelFor(JmxModelProvider.java:41)
    at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:111)
    at com.sun.tools.visualvm.tools.jmx.JmxModelFactory.getJmxModelFor(JmxModelFactory.java:69)
    at com.kodewerk.visualvm.memorypools.MemoryPoolViewProvider.supportsViewFor(MemoryPoolViewProvider.java:41)
    at com.kodewerk.visualvm.memorypools.MemoryPoolViewProvider.supportsViewFor(MemoryPoolViewProvider.java:35)
    at com.sun.tools.visualvm.core.ui.DataSourceViewsManager.getViews(DataSourceViewsManager.java:136)
    at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.openWindowAndAddView(DataSourceWindowManager.java:189)
    at com.sun.tools.visualvm.core.ui.DataSourceWindowManager.access$000(DataSourceWindowManager.java:50)
    at com.sun.tools.visualvm.core.ui.DataSourceWindowManager$1.run(DataSourceWindowManager.java:100)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1423)
    [catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

    然而,直接打开 64bit 的 android studio 就可以查看

    于是把 VisualVM1.3.8 启动参数指定 64bit 的 jdk ,就可以看了。

    是 32bit 的 jdk 没有 sun.tools.attach.HotSpotVirtualMachine 这个包?

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2552 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:55 · PVG 21:55 · LAX 06:55 · JFK 09:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.