2010-10-13 1359 views
6

我们在Hudson上运行我们的持续构建,目前使用“mvn clean verify”。这是我们一直做的,所以我们从来没有质疑过。使用“mvn verify”而不是“mvn clean verify”运行连续构建是否安全

问题是:仅使用“mvn verify”运行连续生成是否安全? 所以这意味着maven-compiler-plugin只会编译自上次构建以来发生更改的类并节省宝贵的时间。

反馈的质量是否与“干净”相同?或者是否存在预期的缺陷?

被测试的产品是一个典型的具有大量生成代码(JSP,报告)的Java Web应用程序。还有使用依赖注入的代码。

回答

8

不,它不安全! Maven编译器插件不够智能,无法发现类A的API已更改,并且它应该检查所有其他类,其中也使用此API。它只会编译A并创建一个有很多破碎类的jar。

注意:通常先运行mvn clean然后运行build/verify/compile/install通常会更好。这允许您在不清理所有时间的情况下多次运行第二个命令。