code: public static void main(String argv[]
                            ) throws IOException, InterruptedException {
      StringUtils.startupShutdownMessage(JobTracker.class, argv, LOG);
  
      try {
        if (argv.length == 0) {
          JobTracker tracker = startTracker(new JobConf());
          tracker.offerService();
          return;
        }
        if ("-instance".equals(argv[0]) && argv.length == 2) {
          int instance = Integer.parseInt(argv[1]);
          if (instance == 0 || instance == 1) {
            JobConf conf = new JobConf();
            JobConf.overrideConfiguration(conf, instance);
            JobTracker tracker = startTracker(conf);
            tracker.offerService();
            return;
          }
        }
        if ("-dumpConfiguration".equals(argv[0]) && argv.length == 1) {
          dumpConfiguration(new PrintWriter(System.out));
          return;
        }
        System.out.println("usage: JobTracker [-dumpConfiguration]");
        System.out.println("       JobTracker [-instance <0|1>]");
        System.exit(-1);
  
      } catch (Throwable e) {
        LOG.fatal(StringUtils.stringifyException(e));
        System.exit(-1);
      }
    }
docs: Start the JobTracker process.  This is used only for debugging.  As a rule,
  JobTracker should be run as part of the DFS Namenode process.