Java 重新启动jetty实例的最佳方法

Java 重新启动jetty实例的最佳方法,java,jetty,Java,Jetty,我使用start.jar和stop.jar来停止和启动我的jetty实例。 我通过调用stop.jar重新启动,然后调用start.jar。 问题是,如果我没有在stop.jar和start.jar之间睡足够长的时间,我就会开始得到这些随机的ClassNotFoundException,并且应用程序无法正常工作 在停止和启动之间睡更长的时间是我目前的选择 我还听到有人说,我应该有一些东西来管理我的线程,以便在jetty完成之前结束这些线程。 这是正确的吗?关于这一点,我的问题是stop.jar会

我使用start.jar和stop.jar来停止和启动我的jetty实例。 我通过调用stop.jar重新启动,然后调用start.jar。 问题是,如果我没有在stop.jar和start.jar之间睡足够长的时间,我就会开始得到这些随机的ClassNotFoundException,并且应用程序无法正常工作

在停止和启动之间睡更长的时间是我目前的选择

我还听到有人说,我应该有一些东西来管理我的线程,以便在jetty完成之前结束这些线程。 这是正确的吗?关于这一点,我的问题是stop.jar会立即返回,因此它似乎对我没有帮助,除非我遗漏了什么。 另一种选择可能是轮询日志文件,但这相当难看

重启码头的最佳方式是什么

吉尔伯特:蚂蚁任务绝对是一种不错的方式。但是,它会休眠一定的时间,这正是我想要避免的。

你试过JFGI吗? 设置可以为您完成工作的Ant任务

这篇博客文章详细介绍了如何设置可以启动和停止jetty的目标。您可以轻松拼凑出另一个名为“jetty restart”的目标,该目标依赖于“jetty stop”,然后调用“jetty start”


在调用shutdown之后和调用startup之前,是否可以编写一个shell脚本来执行类似操作

LISTEN_PORT = `netstat -vatn | grep LISTEN| grep 8080 | wc -l ` while [$LISTEN_PORT -ne 0] ; do sleep 1 LISTEN_PORT = `netstat -vatn | grep LISTEN| grep 8080 | wc -l ` done LISTEN_PORT=`netstat-vatn | grep LISTEN | grep 8080 | wc-l` 而[$LISTEN_PORT-ne 0];做 睡眠1 LISTEN_PORT=`netstat-vatn | grep LISTEN | grep 8080 | wc-l` 完成
此线程看起来很旧,但无论如何,发布可能会帮助某人。跨平台方法:


Long and short-在适当的时候添加一个调用server.stop()的线程