【发布时间】:2015-09-01 10:28:28
【问题描述】:
我正在编写一个 Java EE 应用程序,使用 Jetty 作为应用服务器以方便开发。尽管(重新)部署很快,但我希望 Java 代码更改可以立即反映在正在运行的服务器中而无需重新启动。 (我已经在使用 useFileMappedBuffer 设置来查看静态服务内容的即时更改)。
我已经看到有关使用 Maven Jetty 插件和设置 scanInterval 以重新部署 Web 上下文的问题,但这不是我想要做的。我的 Jetty 服务器是从 Eclipse 中的 Java 应用程序中启动的,我希望代码更改能够立即反映在正在运行的服务器中,就像 Eclipse 中的普通 Java 应用程序一样。我正在“就地”运行代码,即没有先构建和部署 WAR 文件。
我意识到 Web 应用程序有自己的类加载器以符合 servlet 规范,但我不介意冒着非标准行为的风险以在开发中更快地部署更改。我尝试使用WebAppContext.setClassLoader 将类加载器设置为“普通”类加载器,但无济于事。
有可能做我想做的事吗?我相信 JRebel 声称会这样做,但我不是在做什么呢?
【问题讨论】:
标签: java deployment jetty