読者です 読者をやめる 読者になる 読者になる

valid,invalid

関心を持てる事柄について

JDKコマンドを使う時は対象のVMとバージョンを合わせる

Java JDK JVM

でないと VMVersionMismatchException という非常に明確なExceptionが飛ぶ。

$ jstack -F 5268
Attaching to process ID 5268, please wait...
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at sun.tools.jstack.JStack.runJStackTool(JStack.java:136)
at sun.tools.jstack.JStack.main(JStack.java:102)
Caused by: sun.jvm.hotspot.runtime.VMVersionMismatchException: Supported versions are 23.5-b02. Target VM is 23.1-b03
at sun.jvm.hotspot.runtime.VM.checkVMVersion(VM.java:234)
at sun.jvm.hotspot.runtime.VM.(VM.java:297)
at sun.jvm.hotspot.runtime.VM.initialize(VM.java:367)
at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:598)
at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:493)
at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:331)
at sun.jvm.hotspot.tools.Tool.start(Tool.java:163)
at sun.jvm.hotspot.tools.JStack.main(JStack.java:86)
... 6 more



表示されるバージョンはJVM(上の例だとHotSpot)のバージョン。
JavaSEとかに比べるとあまり馴染みが無い。

Supported versions are 23.5-b02. Target VM is 23.1-b03

【参考】

7杯目のおかわりコーヒーはイルカの夢を見るか? - Programming Studio -