面试官:来说说Tomcat的启动过程是什么样子的

面试官:来说说Tomcat的启动过程是什么样子的
面试复制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.
滇ICP备2023000592号-31