
面试复制publicstatic void main(String[] args) {                   //对象初始化                   if (daemon == null) {                       Bootstrap bootstrap = new Bootstrap();                       try {                           bootstrap.init();                       } catch (Throwable var3) {                           handleThrowable(var3);                           var3.printStackTrace();                           return;                       }                       daemon = bootstrap;                   } else {                       Thread.currentThread().setContextClassLoader(daemon.catalinaLoader);                   }                   try {                       String command = "start";                       if (args.length > 0) {                           command = args[args.length - 1];                       }                       if (command.equals("startd")) {                           args[args.length - 1] = "start";                           //加载                           daemon.load(args);                           //启动                           daemon.start();                       } else if (command.equals("stopd")) {                           args[args.length - 1] = "stop";                           //停止                           daemon.stop();                       } else if (command.equals("start")) {                           daemon.setAwait(true);                           //加载并且启动                           daemon.load(args);                           daemon.start();                           if (null == daemon.getServer()) {                               System.exit(1);                           }                       } else if (command.equals("stop")) {                           daemon.stopServer(args);                       } else if (command.equals("configtest")) {                           daemon.load(args);                           if (null == daemon.getServer()) {                               System.exit(1);                           }                           System.exit(0);                       } else {                           log.warn("Bootstrap: command "" + command + "" does not exist.");                       }                   } catch (Throwable var4) {                       Throwable t = var4;                       if (var4 instanceof InvocationTargetException && var4.getCause() != null) {                           t = var4.getCause();                       }                       handleThrowable(t);                       t.printStackTrace();                       System.exit(1);                   }               }             1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.60.61.62.63.64.65.66.