我有一个 EAR 项目,我想专门使用 Maven 来自动化构建过程。
EAR 项目有
- 标准 jar 模块
- 网络模块
- EJB 模块
- RAR 模块
为了能够在 Jboss 4.2.3 和 WebSphere 7 中执行该产品,必须以不同的方式配置 EJB 和 RAR 描述符。我们还为每个应用服务器提供一个 jar 库。
我想要的是能够使用相同的项目为每个应用程序服务器构建一个 EAR,为此我需要
- 根据应用服务器包含 JAR 模块
- 在 EJB/RAR 模块中使用自定义描述符,具体取决于 应用服务器
- 将所有这些自定义模块打包在 EAR 中
可以使用 maven 中的同一组项目来完成此操作吗?
最佳答案
当然。看看profiles在 maven 中。它们允许您调整各种内容(从链接),例如:
-
<repositories>
-
<pluginRepositories>
-
<dependencies>
-
<plugins>
-
<properties>
(实际上在主 POM 中不可用,但在幕后使用) -
<modules>
-
<reporting>
-
<dependencyManagement>
-
<distributionManagement>
- 元素的子集,其中包含:
-
<defaultGoal>
-
<resources>
-
<testResources>
-
<finalName>
-
关于用于多个应用程序服务器的 Maven EAR 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22208259/