extensions/jmx/src/com/google/inject/tools/jmx/Manager.java
public static void main(String[] args) throws Exception {
    if (args.length != 1) {
      System.err.println(
          "Usage: java -Dcom.sun.management.jmxremote "
              + Manager.class.getName()
              + " [module class name]");
      System.err.println("Then run 'jconsole' to connect.");
      System.exit(1);
    }

    Module module = (Module) Class.forName(args[0]).newInstance();
    Injector injector = Guice.createInjector(module);

    manage(args[0], injector);

    System.out.println("Press Ctrl+C to exit...");

    // Sleep forever.
    Thread.sleep(Long.MAX_VALUE);
  }
public static void main(String[] args) throws Exception {
    if (args.length != 1) {
      System.err.println(
          "Usage: java -Dcom.sun.management.jmxremote "
              + Manager.class.getName()
              + " [module class name]");
      System.err.println("Then run 'jconsole' to connect.");
      System.exit(1);
    }

    Module module = (Module) Class.forName(args[0]).newInstance();
    Injector injector = Guice.createInjector(module);

    manage(args[0], injector);

    System.out.println("Press Ctrl+C to exit...");

    // Sleep forever.
    Thread.sleep(Long.MAX_VALUE);
  }
Run with no arguments for usage instructions.