您有2个选择:
1.通过git方法:使用子模块。这是git如何管理子模块git子模块的文档。我个人没有使用它,但是它看起来可以解决您的问题。
2.通过maven方式:在maven中,并非强制要求根项目(配置)成为所有项目的父目录。您可以具有这样的结构:
configuration
+-- pom.xml (configuration:XXX)
project1
+-- pom.xml (project1:1.0-SNAPSHOT)
!
+-- module11
! +-- pom.xml (1.0-SNAPSHOT)
+-- module12
+-- pom.xml (1.0-SNAPSHOT)
project2
+-- pom.xml (project2:2.0-SNAPSHOT)
!
+-- module21
! +-- pom.xml (2.0-SNAPSHOT)
+-- module22
+-- pom.xml (2.0-SNAPSHOT)
配置,project1和project2在同一目录级别,每个目录可以是一个git存储库。在构建project1或project2时,您从project1或project2级别运行maven命令,并且maven将尝试从maven存储库而不是从父目录中获取父(配置)。您应该注意版本。我建议在project1或project2中保留对具有发布版本的父项(配置)的引用。要发布版本,您必须分两个步骤进行操作:首先发布配置,然后发布项目。Project1和project2可以独立发展,并且不必具有与父代相同的配置版本。
仅在特殊情况下,当您想同时使用SNAPSHOT版本的配置和项目时,在project1或project2中,您可以使用<relativePath>
标记里面的<parent>
标记指向您的本地配置路径。我不建议这样做,因为这会在开发环境中造成问题(至少对我来说是在Eclipse中)
我为我的英语道歉。