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