在Jetty中重新启动当前应用程序

时间:2012-08-02 21:46:42

标签: java jetty

我在Jetty上部署了一个Web应用程序作为战争 有没有办法以编程方式重新启动Jetty上当前运行的应用程序? 是否有可以实现此目的的Jetty配置?

2 个答案:

答案 0 :(得分:2)

有3种选择。

  1. 使用JMX

    通过jetty-jmx libs和配置尝试enabling JMX。 然后探讨上下文或部署者的选项,看看是否可以使用JMX来管理已部署的上下文

  2. 创建您自己的Server bean来管理上下文的部署/取消部署

  3. 创建您自己的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