POM策略多个Git回购和图书馆项目

时间:2012-11-05 22:56:34

标签: android maven android-maven-plugin

我已经开始了将我的Android项目移植到使用Maven的艰巨任务。我在查找组织我的pom文件和依赖项的最佳方法时遇到了一些麻烦。我有两个Android应用程序都使用包含资源和网络代码的相同Android库项目。所有这三个项目都使用git进行源代码控制,并在github上进行单独的回购。我将所有第三方库依赖项都放在了Library Project上,比如Action Bar Sherlock,View Pager Indicator等,并使用库将它们导出到项目中。

我想让团队中的其他成员尽可能轻松地构建具有依赖关系的Android应用程序。我是否应该将所有三个repos克隆到同一目录并使poms依赖于假定相同目录的库,或者使用一个git repo与父pom with git sub modules和pom modules更好?我担心这会让人感到困惑。

1 个答案:

答案 0 :(得分:1)

我会根据两个Android项目之间的自然关联来管理我的项目和github存储库。

如果它们是鸟类和鸟类季节,将它们组织为多模块项目并使用单个github存储库会更合理:

parent/
  birds/
  birds-season/
  common-lib/

如果它们是鸟类和小猪,我会将它们分成三个github存储库:

birds/

piggies/

common-lib/

此外,您还应该考虑您的项目发布策略,例如,如果您计划使用maven-release-plugin并且想要完全独立的发布生命周期(版本号,scm标记等),那么它们对于鸟类和鸟类的季节来说,它将它们分成不同的github存储库会更高效(因此maven-release-plugin可以正确管理自动版本增量和scm标记)。