1

我们的团队有一个由 40 个子项目组成的项目。我们以分布式方式开发,这意味着每天早上,我们必须更新其他团队的更改并重建整个项目。问题是现在构建需要一个小时,这是无法忍受的。我想知道是否有任何工具可以“理解”更新并仅以正确的方式构建更新的子项目。有时,当更新不大时,我手动执行此操作。但是当更新如此之大时,很难跟踪。

有什么建议或建议吗?

4

2 回答 2

1

使用继续集成服务器(我推荐 Jenkins)和内部 Maven 存储库(如 Nexus)。大多数 CI 足够聪明,可以找出项目的哪些模块发生了变化,然后只重建它们。成功构建后,CI 应该将您当前的 SNAPSHOT 部署到 Maven 存储库,以便其他开发人员立即看到他们所依赖的更改内容。当然,他们仍然需要更新他们正在处理的代码,但通常这只是几个模块,而所有其他依赖项都是在更改时从 Nexus 下载的。顺便说一句,您将获得所有其他 Continues Integration 优势,例如继续自动测试等。

于 2012-05-30T06:59:11.790 回答
0

是的,使用 SNAPSHOT(使您的整个项目版本为 1.0-SNAPSHOT),并且只签出或构建您正在使用的模块。您可以使用 mvn -U 更新到 SNAPSHOT 的最新副本,以获取其他最新的二进制文件其他开发人员更改的依赖项...

于 2012-05-30T06:19:10.870 回答