直到昨天,jstack运行正常。
今天,突然之间,它给了我以下异常(exception),我也不知道为什么:

$ sudo -u tomcat6 jstack -J-d64 -m 26385
Attaching to process ID 26385, please wait...
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at sun.tools.jstack.JStack.runJStackTool(JStack.java:118)
    at sun.tools.jstack.JStack.main(JStack.java:84)
Caused by: sun.jvm.hotspot.runtime.VMVersionMismatchException: Supported versions are 20.1-b02. Target VM is 19.0-b09
    at sun.jvm.hotspot.runtime.VM.checkVMVersion(VM.java:224)
    at sun.jvm.hotspot.runtime.VM.<init>(VM.java:287)
    at sun.jvm.hotspot.runtime.VM.initialize(VM.java:357)
    at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:594)
    at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:494)
    at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:332)
    at sun.jvm.hotspot.tools.Tool.start(Tool.java:163)
    at sun.jvm.hotspot.tools.JStack.main(JStack.java:86)
    ... 6 more

有谁知道是什么原因造成的?
我在Ubuntu服务器版本上运行Tomcat6。

最佳答案

没关系。这是OpenJDK的问题。
用Sun/Oracle的原始JRE和JDK替换它可以解决此问题。

关于tomcat - Jstack提供了java.lang.reflect.InvocationTargetException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7585429/

10-11 03:40