1

当我使用 jstack 来询问核心转储文件时,我得到了这个异常。我试过使用 sudo 但还是一样。

谢谢你的帮助。

Attaching to remote server core.2941, please wait...
Error attaching to remote server: java.net.MalformedURLException: invalid authority: //core.2941/SARemoteDebugger

sun.jvm.hotspot.debugger.DebuggerException: java.net.MalformedURLException: invalid authority: //core.2941/SARemoteDebugger
at sun.jvm.hotspot.RMIHelper.lookup(RMIHelper.java:115)
at sun.jvm.hotspot.HotSpotAgent.connectRemoteDebugger(HotSpotAgent.java:517)
at sun.jvm.hotspot.HotSpotAgent.setupDebugger(HotSpotAgent.java:374)
at sun.jvm.hotspot.HotSpotAgent.go(HotSpotAgent.java:304)
at sun.jvm.hotspot.HotSpotAgent.attach(HotSpotAgent.java:183)
at sun.jvm.hotspot.tools.Tool.start(Tool.java:196)
at sun.jvm.hotspot.tools.Tool.execute(Tool.java:118)
at sun.jvm.hotspot.tools.JStack.main(JStack.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at sun.tools.jstack.JStack.runJStackTool(JStack.java:140)
at sun.tools.jstack.JStack.main(JStack.java:106)
Caused by: java.net.MalformedURLException: invalid authority: //core.2941/SARemoteDebugger
at java.rmi.Naming.intParseURL(Naming.java:330)
at java.rmi.Naming.parseURL(Naming.java:237)
at java.rmi.Naming.lookup(Naming.java:96)
at sun.jvm.hotspot.RMIHelper.lookup(RMIHelper.java:113)
4

1 回答 1

0

找出了问题所在。

当您连接到核心转储时,您必须传入 java 可执行文件以及核心转储文件。

所以而不是jstack core你需要使用jstack /usr/bin/java core.

(您甚至可以将核心文件加载到 visualvm 中)

于 2016-05-22T13:01:59.213 回答