【问题标题】:How do I package multiple WAR files in one Maven project?如何在一个 Maven 项目中打包多个 WAR 文件?
【发布时间】:2009-07-16 07:37:52
【问题描述】:

我正在编写一个将Geoserver 与自定义组件集成的应用程序,旨在托管在单个servlet 引擎上。两者都是基于 Maven 的项目,我想留在 Maven 土地上,将它们全部打包成一个很好的可分发文件。我的总体想法是向我的应用程序添加另一个模块,将应用程序本身、Geoserver 和所有依赖项打包到一个不错的存档中。

我知道 maven-assembly-plugin 及其将所有依赖项存储在目标文件夹中的能力,但我不确定创建易于部署的包的最佳方法是什么。谷歌搜索任何示例都没有成功。

如果模块可以通过mvn jetty:run 启动,额外奖励积分。

【问题讨论】:

  • 你为什么不确定汇编插件?这似乎是您最好的选择。

标签: java maven-2 servlets packaging war


【解决方案1】:

您是否考虑将它们打包到EAR 项目中。它将捆绑一组 WAR(和 jar),并允许您指定或生成部署描述符。

【讨论】:

  • 你可以使用 jboss:deploy 来获得与 jetty:run 相同的效果
  • @sal,完全一样吗?我认为 jboss:deploy 正在打包耳朵以便通过 JMX 交付到现有的 JBoss 服务器,而 jetty:run 使用当前项目运行嵌入式 Jetty 实例。
  • @sal:jetty:run 的好处是您可以在不依赖任何外部服务器组件的情况下启动应用程序。这意味着没有额外的部署问题,也没有访问权限的管理,这很方便,例如用于功能测试(手动和自动)。
  • @Rich:到目前为止,已经避开了 EAR,但您可能是对的。我会调查的。
  • 我实际上决定使用 Cargo 插件来管理 Servlet 引擎要容易得多,它允许您将多个 WAR 部署到一个以 Maven 目标开始的引擎中。既然那不是我的问题(即使它应该是),我会接受 Rich 的回答——我相信他是对的,但我还没有测试过。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-04
相关资源
最近更新 更多