Sbt scala微服务项目中Git子模块与库依赖关系

Sbt scala微服务项目中Git子模块与库依赖关系,sbt,microservices,git-submodules,Sbt,Microservices,Git Submodules,有一个多项目sbt构建配置,在一个repo中包含一堆微服务。每个微服务都是独立的。此外,还有一个名为common的单独存储库,其中包含微服务的共享模型 我想知道的是如何处理common项目和使用它的微服务之间的依赖关系。 git子模块方法是否适合这种情况 一种可能的解决方案是在主回购中创建子模块common,并使每个微服务依赖于该模块: serviceA.dependsOn(common) serviceB.dependsOn(common) ... 另一种解决方案是为每个微服务的公共服务添

有一个多项目sbt构建配置,在一个repo中包含一堆微服务。每个微服务都是独立的。此外,还有一个名为
common
的单独存储库,其中包含微服务的共享模型

我想知道的是如何处理
common
项目和使用它的微服务之间的依赖关系。 git子模块方法是否适合这种情况

一种可能的解决方案是在主回购中创建子模块
common
,并使每个微服务依赖于该模块:

serviceA.dependsOn(common)
serviceB.dependsOn(common) 
...
另一种解决方案是为每个微服务的公共服务添加特定的依赖性:

serviceA
.settings(
   libraryDependencies ++= Dependencies.common
) 
每种方法的优缺点是什么? 一般来说,管理共享代码关系的正确方法是什么? 感谢是前进