0

如何配置 Tapestry5 项目以使用嵌入式 Jetty 独立运行(通过 java -jar)?

我正在寻找一个关于 Tapestry5、Jetty、servlet/处理程序的配置/连接点所需的任何东西的简短“食谱”......

我已经看到了一些点:如何创建可执行的战争配置 Tapestry(参考 Tapestry 作为 servlet 过滤器)

编辑:由于服务器情况,我正在考虑一个独立运行的 webapp。它不一定要嵌入 Jetty,但我不能依赖稳定的应用服务器。不过,仍在寻找食谱,所以我不会花太多时间在死胡同上……

另外,我希望 Jenkins(Hudson)能够在部署更新时自动停止和启动服务器 - 我不知道这是否会影响我对 Jetty 的使用,f.ex。

4

3 回答 3

3

好吧,我相信这是一个普遍的“如何进行战争问题”。假设您确实有战争,您可以使用 jetty 或 winstone 来“运行”它 - 请参阅:

http://winstone.sourceforge.net

http://www.enavigo.com/2008/08/29/deploying-a-web-application-to-jetty/

在第一种情况下,您可以直接执行

java -jar winstone.jar --warfile=<warfile>
于 2011-02-18T15:11:41.243 回答
1
于 2011-02-24T14:38:04.900 回答
0

我做了一些挖掘,这是我基本上最终遵循的简短食谱:

  1. 从Tapestry 5 原型的 pom.xml 中配置的 Maven Jetty 插件开始
  2. stopKeyandstopPort属性添加到 Maven Jetty 插件配置
  3. Jenkins CI运行 maven 目标jetty:stop,然后clean install
  4. 让 Jenkins 运行 shell 脚本mvn jetty:run &

瞧——我的 Java 应用程序已启动并运行自动更新的代码,无需任何应用程序服务器。

于 2011-03-01T19:21:48.583 回答