如果标志“-N”( - 非递归)不存在,有没有办法失败?我正在努力做到这样的事情:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<configuration>
<rules>
<requireProperty>
<property>-N</property>
<message>Missing --non-recursive flag</message>
</requireProperty>
</rules>
</configuration>
</plugin>
此强制政策位于个人资料中。如果有一种方法可以激活配置文件中的--non-recursive标志,那就没问题了。
答案 0 :(得分:0)
您可以编写一个自定义的强制执行规则来检查MavenSession
,并确保reactor项目列表包含一个且仅包含一个项目。这并不能保证您已使用-N
调用,但它对您想要的内容同样有效。
答案 1 :(得分:0)
我遵循了一个更简单的方法:evaluateBeanshell规则。感谢Stephen Connolly的回答,我已经设法找出“递归”布尔值的位置。
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>require non recursive flag</id>
<phase>validate</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<evaluateBeanshell>
<condition>false == ${session.request.recursive}</condition>
<message>Non-recursive flag is missing</message>
</evaluateBeanshell>
</rules>
</configuration>
</execution>
</executions>
</plugin>
我认为它仅适用于maven 3。