【问题标题】:Jetty: hot deploy of new filesJetty:新文件的热部署
【发布时间】:2013-08-01 11:07:28
【问题描述】:

Jetty 的热部署很棒。我每天都通过 jetty:run 使用它并节省我的时间。

但是。

它不会部署我在我的 webapp 中创建的新文件(src/main/webapp/WEB-INF/jsp 中的 JSP)。 它只会重新部署修改后的文件。

有谁知道让 Jetty 热部署新文件而不重新启动它的方法?

这是我当前的配置:

<configuration>
    <scanIntervalSeconds>5</scanIntervalSeconds>
    <webAppSourceDirectory>${basedir}/src/main/webapp</webAppSourceDirectory>
    <webAppConfig>
        <defaultsDescriptor>${basedir}/src/main/config/webdefault.xml</defaultsDescriptor>
        <contextPath>/${project.artifactId}</contextPath>
        <jettyEnvXml>${project.build.directory}/jetty/jetty-env.xml</jettyEnvXml>
    </webAppConfig>
</configuration>

【问题讨论】:

    标签: deployment jetty


    【解决方案1】:

    您可以尝试在上面的配置中添加 scanTarget 参数。

    <scanTargets>
        <scanTarget>src/main/webapp/WEB-INF/jsp</scanTarget>
    </scanTargets>
    

    【讨论】:

      【解决方案2】:

      使用“正常”的 jsp 配置,当添加/更改 jsp 时,jetty 无需热重新部署上下文。 Jasper jsp 容器使新的/修改后的 jsp 在您点击其 url 时可用而无需重新启动上下文

      但是,在您的情况下,您已将 jsps 放在 WEB-INF 中,这是一个禁止提供服务的位置。为了让 jsps 能够正常工作,您必须进行某种服务器端重定向。你没有发布你的配置,所以我不确定你的重定向解决方案是什么。

      我可以告诉你,jetty-maven-plugin扫描 WEB-INF 中特定文件的更改(这里是一个旧文档页面的链接,它仍然相当准确:http://docs.codehaus.org/display/JETTY/Which+files+are+scanned+by+the+Jetty+Maven+Plugin )。因此,如果您的重定向设置需要在将新 jsps 放入 WEB-INF 时重新部署上下文,那么 Ayub Malik 之前使用额外的 scanTargets 给出的答案是有效的。

      问候 一月

      【讨论】:

        猜你喜欢
        • 2012-05-06
        • 2014-06-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-14
        • 2012-09-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多