我要优化建设我们项目的时间。最耗时的事情之一是项目的汇编。
由于这里特别提到的maven的已知问题:Maven增量建筑,我们必须在每个构建过程之前使用mvn。
我曾调查过这个问题,发现有两种方法:
我测试过增量构建插件Maven Mojo,看上去很不错。正如我所看到的,Maven 2反应堆插件实现了几乎相同的功能,但是应该指定特殊的命令来实现结果(例如,mvn反应堆:make)。
因此,我得出的结论是,如果开发人员要优化本地计算机上的建筑时间,Maven 2反应堆插件就更方便了。但是我有些犹豫,因为Maven 2反应堆插件是托管的,而且(我认为)是作为官方的maven插件支持的,但是增量构建插件Maven Mojo是托管在java.net上的。
我的问题是:
发布于 2012-04-20 18:24:38
上面提到的两个插件都不会加快您的使用程序的编译时间。如果您想加快编译时间,我建议您在并行构建支持下更新到maven 3。
但是,除了反应堆插件的svn相关特性外,使用maven3也可以实现上述插件所做的工作。为此,您需要jenkins,正如上一篇文章中提到的那样。
有用的maven 3特性可以加快构建速度:
mvn clean compile -T 3 (using three threads for paralell builds)
mvn -amd -pl groupid:arifactId (builds the specified projects and all dependent artifacs)发布于 2012-04-04 12:30:12
当您只想在构建中构建模块的子集时,这个反应堆插件更适合于构建那些自上次编译以来已经更改的模块。
虽然我可以看到您使用这两种方式之一的效果相同,但您可能更感兴趣的增量构建插件,从您所说的。如果模块/依赖项有未编译的更改,那么是否可以同时使用它们来确保只构建它们。
PS -我认为干净的错误已经修复在最新的增量构建插件发行版。
发布于 2012-03-23 18:16:08
你试过用詹金斯(或者哈德森)吗?这是相当不错的,并管理许多小的,依赖的项目。在服务器上设置也非常容易。我建议至少试一试。要设置服务器并配置20个maven项目,只需几分钟。
我喜欢的是,它将监控您的源代码管理,每隔X分钟执行一次构建,并且它将连续自动构建任何上游项目。
https://stackoverflow.com/questions/9306940
复制相似问题