【发布时间】:2014-01-13 12:07:54
【问题描述】:
我们的应用程序(30 个 Maven 模块)的全局构建花费了太多时间(15 分钟)。这包括单元和集成测试。大部分时间用于集成测试 (60%)。
我们的技术栈由 Spring、Spring MVC、Spring Batch 等和 Maven 组成。我们的开发人员没有动力保持这种做法(在提交之前构建全部)
由于我想缩短构建时间,我建议以下方案:
- 并行构建:
mvn -T 1C不会工作,因为这会消耗 开发人员机器的所有资源,这会阻止开发人员 做其他事情。 - 按配置文件组织模块 (
front, batch, connector, commons) 也不起作用,因为我们的模块是相互依赖的,我们 必须全部构建。
您对改进大型项目的构建时间有什么建议吗?
提前致谢。
【问题讨论】:
-
我在我从事的项目中遇到过很多次。我不认为 15 分钟的构建时间特别长。您能否尝试通过在提交之前解雇未运行测试的开发人员来激励开发人员?
-
我们一天提交了很多次,每次提交都要等 15 分钟,非常令人沮丧。特别是当您解决错误和回归时。所以我不认为这是因为我们有一两个开发人员没有测试头脑,而是因为这真的很痛苦。
-
在开发者的构建中可能不需要集成测试。
-
也许你可以加快你的测试?
-
如果
mvn -T 1C消耗了太多资源,那么您应该找到瓶颈并适当地升级您的开发机器。您也可以尝试mvn -T n其中n是一些常量,以使用小于1C的常量池大小
标签: java spring maven spring-mvc spring-batch