我有一些具有复杂依赖关系的Eclipse / Maven项目。为了简化,只需考虑项目A
,B
和C
,其中A
和B
是独立的,但都依赖于公共项目C.项目C包含一堆不经常更改的服务接口定义。
现在我想将项目A和B拆分到他们自己的独立存储库中,使用单独的构建管道等。项目C非常简单,甚至可能没有自己的CI管道。
这就是问题所在,无论开发人员是同时检出一个,两个还是三个项目,我都需要顺利工作,而不需要任何开发人员采取额外的配置步骤。这可能吗?
答案 0 :(得分:0)
由于A和B都需要项目C,因此只需要提供C项目的jar。
一种干净的方法是在nexus存储库中添加C jar依赖项。
从nexus存储库向A和B添加C jar依赖项将获取jar。
如果nexus存储库不是一个选项,您可以在项目A和B中包含C jar以及脚本以将其安装在本地maven存储库中。 (或者顺利使用jar的另一种方式)但是每次更新C时都需要更新A和B. 所以在实践中,当C被签出时,A和B也应该被检查出来。