This chapter contains frequently asked questions and answers about Java Mission Control.
The following issues sometimes arise:
Consider the following:
Are you using the correct protocol?
Ensure that you are using the same version of the JVM that you want to monitor as is being used by the JVM running the JMC client.
The format of the service URL is:
service:jmx:rmi:///jndi/rmi://<hostname>/jmxrmi
Are the correct ports opened?
Note that running JMX over RMI requires two ports and that one of the ports will not be known beforehand.
Is the communication caught in a firewall?
For more information, see "Java Mission Control Communications" in the Introduction to Java Mission Control on the Oracle Technology Network.
Sometimes RMI can have a problem determining which address to use. This can happen because of any of the following:
There are access restrictions in the Security manager.
The machine is multihomed and RMI is selecting the wrong interface.
There is a misconfigured hosts file or a number of different network related configuration problems.
If all else fails, you can try specifying the java.rmi.server.hostname
system property. Note that this can affect applications running on the JVM.
Ensure that you are using JAVA_HOME/bin/jmc
to start the JMC client.
Consider the following:
Make sure that you are using JAVA_HOME/bin/jmc
to start the JMC client.
If you are running JMC from Eclipse, make sure that Eclipse is running on a JDK (not JRE).
Make sure that there is a directory named hsperfdata_
username in the system's tmp
directory, that it is writable by the user running JMC, and that the file system supports access control lists (ACLs).
Before starting JMC, you need to add the -Xbootclasspath/a
option to the -vmargs
section of the jmc.ini
file. The value for this option (after a colon) should be set to the extended classpath that is generated by JBoss's jconsole.bat
file (for this, add @echo on
to the file and run it).