我有一个带有 webapp 的 Maven 项目,我需要两个版本,每个版本都有自己的一组依赖项。目的是支持存储客户端的两个不同(且冲突)版本。在这两种情况下,webapp 代码、配置文件和除了某些库之外的任何东西都是相同的。正确的客户端在运行时加载:我只需要将正确的 jar(及其依赖项)放入 webapp 的 lib 文件夹中。
如果我手动部署依赖项,我将失去检查版本冲突的机会(当我构建一个所有依赖项都正确设置的 Maven 项目时,我会这样做)。
我不想在 maven 存储库上部署 webapp,因为它不是一个库,它只会生成一个大存档(主要是因为嵌入的依赖项),而这会白白占用空间。因此,为了构建最终 war ,我无法添加对 webapp 项目的依赖。
我不想在两个不同的模块中复制通用的 webapp 类文件和配置文件。由于每次更新一个文件时两个模块之间都需要同步,这将使 future 的发展更加困难。
关于如何解决这个问题有什么建议吗?
请注意,最好的解决方案应该允许同时构建两个 war 。
最佳答案
使用 Maven 配置文件。
http://maven.apache.org/guides/introduction/introduction-to-profiles.html
您可以将某些依赖项放入某些配置文件中,并通过带有 -P
参数的命令行激活/停用它们。
关于java - 使用 maven 构建具有不同依赖项的相同 webapp 两次的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46050945/