gpt4 book ai didi

eclipse - 什么 maven-jetty-plugin 8 配置允许在 JSP 文件更改时重新加载它们?

转载 作者:行者123 更新时间:2023-12-02 03:54:59 25 4
gpt4 key购买 nike

考虑 Maven 中的默认 webapp 配置(对于测试用例,我使用了来自 https://repository.apache.org/content/groups/public/archetype-catalog.xml 的 struts2-blank-archetype)。

此原型(prototype)随 maven jetty 插件版本 6 一起提供。使用下面的配置,如果我更改/src/main/webapp/WEB-INF/下的 jsp 并保存它,刷新浏览器将显示这些变化。

        <plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.21</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
</configuration>
</plugin>

(notice that one doesn't even need to put the scantarget element, as we don't want a complete container reload when you just change a jsp).

但是,与插件版本 8 完全相同的配置(见下文)不起作用。如果我更改相同的 jsp,刷新浏览器将显示旧的 JSP 内容。只有停止并启动服务器,我才能看到更改。

        <plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.7.v20120910</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
</configuration>
</plugin>

此配置有什么问题,什么配置会在版本 8 中产生相同的结果(即,在不重新启动服务器的情况下自动刷新 jsp 内容)?

编辑:您可以尝试以下 2 分钟的测试:

  1. 创建原型(prototype) struts2-archetype-convention(“mvn archetype:generate”,308,package war)。
  2. 编辑 pom 并将 jetty 插件配置设置为上面列出的配置(版本 6)
  3. mvn jetty :运行
  4. 打开浏览器“http://localhost:8080”
  5. 查看页面上的“语言”
  6. 编辑/src/main/webapp/WEB-INF/content/hello.jsp - 将“语言”更改为其他内容。保存。
  7. 刷新浏览器并查看更改。
  8. 重复这些步骤。在第 2 步中,将 artifactId 和版本更改为上面列出的那些(版本 8)
  9. 在 JSP 中执行更改后,确认网页不会在刷新时发生更改。

最佳答案

自 jetty-6 天以来,该插件已进行了大量改进,以运行各种不同的项目配置。查看插件的文档页面,选择最能满足您需求的方案并根据需要调整配置。我怀疑您的情况属于“运行未组装的网络应用程序”。

http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin

我会注意到,对于 jetty-9,我们最终将插件带到了 eclipse,这样它就可以与将 groupId 更改为 org.eclipse.jetty 的项目一起使用,这是 9.0.0 的 jetty-maven-plugin .M2 将在下周初发布(相关文档也将更新)

干杯

关于eclipse - 什么 maven-jetty-plugin 8 配置允许在 JSP 文件更改时重新加载它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13092601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com