我们小组已经将三个不同项目的共享依赖项重构为一个新项目,这个项目现在是三个项目的唯一依赖项。我们使用maven-jar而不是使用maven-assembly编译这三个项目。这会产生一个小得多的jar文件,可以更快地部署。
现在,对于我们的Spring项目,存在独特的依赖(spring-boot,mockito等)。我们想将这些重构为共享项目,但是想要共享项目的单独构建,一个用于具有共享依赖项的三个项目,一个用于Spring项目。
我认为创建一个pom.spring.xml基本上是pom.xml的副本加上Spring依赖项就可以了,但这没有用。我看到Maven已经构建了profiles,但是我没有看到如何将依赖关系扩展到不同的构建。
关于我们如何实现这一目标的任何建议,缺少两个不同的共享项目?
答案 0 :(得分:0)
很简单,您应按如下方式构建产品
Project-Parent
pom.xml - Shared parent pom. This pom declares the shared dependencies, and has project1, project2, and project2 as submodules.
project1
pom.xml - has the shared parent pom as its parent.
project2
pom.xml - has the shared parent pom as its parent.
project3
pom.xml - has the shared parent pom as its parent.
SpringProject
pom.xml - Spring project pom. Has the shared parent pom as its parent. Declares addition dependencies required for the spring project.
这样,project1,project2和project3属于同一个版本。 SpringProject是一个单独的构建,但它继承自共享父代。