2 Using the Java Mission Control Client

This chapter describes how to start the JMC client and use its features.


Java Mission Control requires a commercial license for use in production. To learn more about commercial features and how to enable them please visit http://www.oracle.com/technetwork/java/javaseproducts/.

The JMC client is the main application from which you connect to JVMs and start the tools included in Java Mission Control. You can run the JMC client either as a standalone application or as an Eclipse plug-in. Ensure that you run the JMC client in a secure environment, because it does not include or run with a security manager.

2.1 Starting the Java Mission Control Client

The JMC client executable file is located in the bin directory of the Java SE Development Kit (JDK) installation path (JAVA_HOME). If the JAVA_HOME/bin directory is in the PATH environment variable, you can start the JMC client by entering jmc at the command-line prompt (shell). Otherwise, you have to specify the full path to the JMC executable:

  • JAVA_HOME\bin\jmc.exe (Windows)

  • JAVA_HOME/bin/jmc (Linux, OS X)


On Windows, a shortcut to the JMC client executable is added to the Java Development Kit folder under All Programs in the Start menu.


On OS X, if you cannot find the JMC executable or locate JMC in Spotlight, you can start JMC from the command line using /Library/Java/JavaVirtualMachines/jdk<version>.jdk/Contents/Home/bin/jmc. Alternatively, use Finder to browse to /Library/Java/JavaVirtualMachines/jdk<version>.jdk/Contents/Home/lib/missioncontrol and double-click the Java Mission Control app.


On OS X, when you launch the JMC executable, the Terminal window opens. When you close the JMC client, the Terminal is left behind with the text [Process completed]. To avoid this, open the Terminal Preferences, then open the Settings tab, select the scheme you use, then select the Shell tab, and change the When the shell exits option to Close if the shell exited cleanly.

Passing JVM Options To the JMC Launcher

JMC is a Java application, and the JMC client executable is a launcher for this application. JMC startup is controlled by options specified in the jmc.ini file, which is located in the JAVA_HOME/bin directory. Arguments to the -vmargs option in the jmc.ini file are options that are passed to the JVM running the JMC application. You can specify these options to control the way this JVM runs. If you do not want to modify the jmc.ini file, you can specify JVM options on the command line as arguments to the -vmargs option of the jmc command.


If other options are specified for the jmc command, the -vmargs option must be specified last.

To start the JMC client with your own set of JVM options (overriding those specified in the jmc.ini file), run the following command (separate multiple arguments with spaces):

jmc -vmarg arguments

To start the JMC client with additional JVM options (appending them to those specified in the jmc.ini file), run the following command (separate multiple arguments with spaces):

jmc --launcher.appendVmargs -vmarg arguments

Using a Workspace Directory

If you want to copy your settings for the JMC client to another computer or another user, or use different predefined settings for different applications, add the -data command-line option and define a workspace directory when you start the JMC client:

jmc -data workspace-directory

2.2 Java Mission Control Client GUI

When you first launch the JMC client, the left part of the window contains two views by default:

  • JVM Browser is the plug-in that shows all available JVM connections.

  • Event Types contains a list of event types for a selected flight recording. For information about opening a flight recording, see the Java Flight Recorder plug-in section of the online help.

You can open the Window menu, select Show View and then Other to open a window that lists all available views. Select the necessary views and click OK to open them. The following views are available in addition to the default ones:

  • Properties lists the properties of items that you select in tables, including hidden properties that are not displayed in the tables.

  • Progress View displays the progress of running operations, for example, a flight recording.

  • Help displays the Java Mission Control online help.

The other part of the JMC client window is reserved for the Editor Area, which is used to work with the plug-ins for available JVM connections. To launch a plug-in, right-click a JVM connection and select the plug-in (Start JMX Console, Open Historical Data, Start Flight Recording, etc.).

2.2.1 Tabs and Tab Groups

Views and editors are displayed as tabs united into tab groups. You can drag tabs and tab groups around the JMC client window to create a layout that works best for you. View tabs and tab groups can even be detached from the main window.

You can maximize a tab group to the size of the JMC client window or minimize it to make more room for other tab groups:

  • To maximize a tab group, click the Maximize button in the top-right corner. The tab group expands almost to the size of the JMC client window and the Maximize button changes to the Restore button. The other tab groups are automatically minimized.

  • To minimize a tab group, click the Minimize button in the top-right corner. The tab group shrinks and the Minimize button changes to the Restore button. The other tab groups fill the rest of the JMC client window proportionally.

  • To restore the tab to its original state, click the Restore button.

To separate logically related information, editor tabs are divided into subtabs (or subtab groups), allowing you to drill down into specific data. Some of the subtabs have buttons to control the data displayed in them to the right of the subtab name.

2.2.2 Panels

Editor tabs are composed of panels with logically related information in the form of graphs, tables, lists, and so on. You can modify some of the parameters using various controls in the panels, such as buttons, text fields, drop-down lists, and so on.

Some panels can be collapsed to make more room for other panels in the tab (using the black triangle show and hide button next to the panel name). To the right of the panel name, there are buttons to add and remove components, refresh data, switch modes, change settings, get online help about the panel, and so on.

Most panels are unique, but some are similar for different tabs. Information for using each panel is provided in the description for the panel. To see this information, click the question mark button to the right of the panel name.