3

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

4

2 回答 2

2

有 3 个选项。

  1. 使用 JMX

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

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

  3. 创建您自己的 AppProvider,提供给DeploymentManager以编程方式控制已安装的上下文。

于 2012-08-11T04:19:02.620 回答
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
于 2014-09-30T23:37:38.370 回答