我已将 maven 配置为通过maven-gunit-plugin运行gunit(一个 ANTLR 语法单元测试工具)。然而,gunit 有两种不同的模式。第一种模式使 gunit 充当解释器,读取 *.gunit(或 *.testsuite)文件,解释它并显示结果。可以这样配置:
<plugin>
<groupId>org.antlr</groupId>
<artifactId>maven-gunit-plugin</artifactId>
<version>3.1.3</version>
<executions>
<execution>
<id>maven-gunit-plugin</id>
<phase>test</phase>
<goals>
<goal>gunit</goal>
</goals>
</execution>
</executions>
</plugin>
第二种模式使 gunit 生成可以由 JUnit 运行的源代码。如何指示 maven-gunit-plugin 生成 JUnit 源而不是充当解释器?
几点注意事项:
- 我可以将测试阶段更改为“生成测试源”以使 maven 插件在正确的时间运行。
- 我在 maven-gunit-plugin 上找不到任何有用的文档
- 我见过人们使用exec-maven-plugin来运行带有特定命令行选项的 gunit,但我不打算这样做。
编辑/解决方案:
在阅读了各种回复后,我下载了 ANTLR 源代码,其中包括 maven-gunit-plugin。该插件不支持junit生成。事实证明,gunit-maven-plugin 的 codehaus 快照和 exec 插件是目前唯一的选择。