我在Jetty上部署了一个Web应用程序作为战争 有没有办法以编程方式重新启动Jetty上当前运行的应用程序? 是否有可以实现此目的的Jetty配置?
答案 0 :(得分:2)
有3种选择。
使用JMX
通过jetty-jmx libs和配置尝试enabling JMX。 然后探讨上下文或部署者的选项,看看是否可以使用JMX来管理已部署的上下文
创建您自己的Server bean来管理上下文的部署/取消部署
创建您自己的AppProvider,提供给DeploymentManager以编程方式控制已安装的上下文。
答案 1 :(得分:1)
这是尝试解决此问题: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