Estou tentando verificar minhas configurações de memória atualmente em uso com o tomcat por meio de jinfo no Ubuntu.
No entanto, ao executar jinfo -flags <PID>
no PID do tomcat, recebo o seguinte erro:
$ sudo jinfo -flags 14930
Attaching to process ID 14930, 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:622)
at sun.tools.jinfo.JInfo.runTool(JInfo.java:97)
at sun.tools.jinfo.JInfo.main(JInfo.java:71)
Caused by: sun.jvm.hotspot.runtime.VMVersionMismatchException: Supported versions are 23.25-b01. Target VM is 24.65-b04
at sun.jvm.hotspot.runtime.VM.checkVMVersion(VM.java:234)
Este erro sugere que há incompatibilidade de versão ( Supported versions are 23.25-b01. Target VM is 24.65-b04
).
A instância tomcat7 está configurada com java-7-openjdk-amd64
No entanto, jinfo
está usando java-6-openjdk-amd64
Para ver se havia um jinfo alternativo que eu poderia usar como parte do java-7-openjdk-amd64, executei o seguinte:
$ update-alternatives --get-selections | grep jinfo
jinfo auto /usr/lib/jvm/java-6-openjdk-amd64/bin/jinfo
Mas não encontrei nada. Então eu procurei no diretório bin por java-7-openjdk-amd64, mas é claro que não encontrei nenhum jinfo lá também.
O java-7-openjdk-amd64 não é mais fornecido com o jinfo?
A documentação do Oracle informa:
NOTE - This utility is unsupported and may or may not be available in future versions of the JDK
Se não, existe uma alternativa?