怎么让一个java程序接收命令后重启
高洛峰
高洛峰 2017-04-18 09:29:42
0
3
509

1 一个web程序部署在tomcat程序中,
怎么让程序接受重启命令后重启

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

membalas semua(3)
Peter_Zhu

Anda boleh membuat perkhidmatan antara muka bebas dan melaksanakan skrip mula dan berhenti, supaya anda boleh mencapai kesan yang anda inginkan

小葫芦

Gunakan java secara langsung untuk memanggil arahan sistem untuk memulakan semula tomcat
Kodnya mungkin seperti ini:

public static void runShell(final String cmd) throws IOException, InterruptedException {
        executorService.execute(new Runnable() {
            @Override
            public void run() {
                try {
                    Runtime run = Runtime.getRuntime();
                    Process p = run.exec(cmd);
                    BufferedInputStream in = new BufferedInputStream(p.getInputStream());
                    BufferedReader inBr = new BufferedReader(new InputStreamReader(in));
                    String lineStr;
                    while ((lineStr = inBr.readLine()) != null) {
                        logger.info(lineStr);// 打印输出信息
                    }

                    //检查命令是否执行失败。
                    if (p.waitFor() != 0) {
                        if (p.exitValue() == 1) {// 0表示正常结束,1:非正常结束
                            logger.error(cmd + "命令执行失败!");
                        }
                    }
                    inBr.close();
                    in.close();
                } catch (Exception e) {
                    logger.error("调用系统命令失败!", e);
                }
            }
        });

    }
左手右手慢动作

Memulakan semula program web tidak lebih daripada menamatkan proses, melaksanakan fungsi exit 4 sistem, dan kemudian melaksanakan kaedah utama untuk memulakan bekas Program ini mestilah bebas

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan