通过 Maven 支持多个应用服务器
Support multiple application servers through Maven
我们有一个部署在 Wildfly 上的 Java Web 应用程序。然而,一位客户现在想要使用 WebSphere。我们发现 war
文件的 lib
文件夹中包含的 jar
文件在 Wildfly 和 WebSphere 之间需要略有不同 - WebSphere 不喜欢有一些库Wildfly 适用于(AS 提供的不同库?)。
我们希望尽可能将其自动化,尽管我认为可能 一些 在 pom.xml
或 build.xml
中手动摆弄当需要为一个或另一个构建文件时。但是有没有一种好的、理智的方法来适当地过滤 jar
文件?我唯一能想到的是在 pom.xml
文件中使用 <exclusions>
,但我不知道如何明智地控制它,如果我想为一个 AS 与另一个构建,除了评论一堆 <exclusions>
或 <scope>
出来了,这似乎不切实际。
是否可以通过 Maven 以几乎完全自动化的方式完成此操作?或者什么是最好的方法?
它们允许您 activate/deactivate POM 的一部分。所以你定义了一个配置文件 websphere
和一个配置文件 wildfly
。您将供应商特定的依赖项放入配置文件中(您也可以将相同的依赖项放入每个具有不同排除项的配置文件中)。
然后您可以 activate/deactivate 从命令行、settings.xml
或通过给定文件的存在或不存在的配置文件。
我们有一个部署在 Wildfly 上的 Java Web 应用程序。然而,一位客户现在想要使用 WebSphere。我们发现 war
文件的 lib
文件夹中包含的 jar
文件在 Wildfly 和 WebSphere 之间需要略有不同 - WebSphere 不喜欢有一些库Wildfly 适用于(AS 提供的不同库?)。
我们希望尽可能将其自动化,尽管我认为可能 一些 在 pom.xml
或 build.xml
中手动摆弄当需要为一个或另一个构建文件时。但是有没有一种好的、理智的方法来适当地过滤 jar
文件?我唯一能想到的是在 pom.xml
文件中使用 <exclusions>
,但我不知道如何明智地控制它,如果我想为一个 AS 与另一个构建,除了评论一堆 <exclusions>
或 <scope>
出来了,这似乎不切实际。
是否可以通过 Maven 以几乎完全自动化的方式完成此操作?或者什么是最好的方法?
它们允许您 activate/deactivate POM 的一部分。所以你定义了一个配置文件 websphere
和一个配置文件 wildfly
。您将供应商特定的依赖项放入配置文件中(您也可以将相同的依赖项放入每个具有不同排除项的配置文件中)。
然后您可以 activate/deactivate 从命令行、settings.xml
或通过给定文件的存在或不存在的配置文件。