我为现在工作正常的项目创建了几个原型,但是我想能够验证从原型生成的代码将来会继续工作.
我想要的是原型构建的一个阶段,它使用刚刚创建的原型,运行mvn archetype:generate,然后在生成的代码上运行mvn验证,以验证生成的代码是否确实正常.如果需要,我会写我自己的mojo来做这个,但是想看看一个解决方案是否已经存在.我看到原型:集成测试目标,但似乎没有做我想要的.
解决方法
更新2013:现在比其他答案建议的容易得多.
http://jira.codehaus.org/browse/ARCHETYPE-334于2011年8月完成
要使用,只需将word安装在上面提到的goal.txt文件中,并且来自您原型的项目的测试将作为正常构建的一部分被调用. (和/或在OP的情况下验证)
但是,如果您刚才提出的原型意识到this popular mini-guide已经过时,并且它将用于制作原型,则不会运行原型集成测试.您应该按照here所述创建一个archetype-Metadata.xml文件(与使用文件集一样,这也更好)
还要注意,这些集成测试不会对-DskipTests进行响应,但是可以如下补救:
<build> <plugins> <plugin> <artifactId>maven-archetype-plugin</artifactId> <version>2.2</version> <configuration> <skip>${skipTests}</skip> </configuration> </plugin> </plugins> </build>
(尽管这看起来像是跳过了整个插件,但实际上它可能是因为它回到了传统模式,而我找不到任何成功的方法来跳过仅使用上面代码的集成测试目标执行.)