在Jetty中重新启动当前应用程序
问题描述:
我在Jetty上部署Web应用程序作为战争。
有没有一种方法可以以编程方式在Jetty上重新启动当前运行的应用程序?
有没有可以实现这个目标的Jetty配置?在Jetty中重新启动当前应用程序
答
有3个选项。
-
使用JMX
通过码头,JMX库和配置尝试enabling JMX。 然后周围的环境或部署者的选项戳,看看是否可以使用JMX管理部署环境
创建上下文
的自己Server bean管理部署/取消部署创建自己的AppProvider ,提供给DeploymentManager以编程方式控制安装的上下文。
答
这是解决这个问题的尝试:https://github.com/giuliano108/jetty-manager
sudo -u username jetty-manager
Usage:
jetty-manager jvms
jetty-manager webapps <jvm> [ <webappfilter> ]
jetty-manager threads <jvm>
jetty-manager stop <jvm> <webappfilter>
jetty-manager start <jvm> <webappfilter>
jetty-manager restart <jvm> <webappfilter>
jetty-manager (-h | --help)
Commands:
jvms Show the running JVMs (PID, name)
webapps Show the webapps hosted by <jvm> and their state
threads Show the total number of threads in the <jvm>
Arguments:
<jvm> JVM PID or regexp (matched against the JVM name)
<webappfilter> regexp matched against the context path (URL)
Options:
-h --help Show this screen
看看这个 - > http://docs.codehaus.org/display/JETTY/Embedding%2BJetty,你可能能够做到server.restart();或者其他的东西。没有尝试过 – ant 2012-08-02 22:30:52