如果某些正则表达式与src代码匹配,那么使mvn
构建失败的最简单方法是什么?
我找到的最好的解决方案(hacky)正在使用maven-replacer-plugin并使用正则表达式将代码替换为生成编译失败的代码。
答案 0 :(得分:0)
假设您在maven中运行测试,那么项目主页将是工作目录,因此要获取src目录:
new File(System.getProperty("user.dir") + "/src");
然后以递归方式查找该目录下的所有.java文件并应用正则表达式。
答案 1 :(得分:0)
我最终使用Maven Checkstyle Plugin。
在我的pom中我有:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.10</version>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<configuration>
<configLocation>checkstyle.xml</configLocation>
<failsOnError>true</failsOnError>
<consoleOutput>true</consoleOutput>
</configuration>
</plugin>
...
checkstyle.xml
具有以下内容:
<module name="Checker">
<module name="TreeWalker">
<module name="RegexpSinglelineJava">
<property name="format" value="myRegex"/>
<property name="ignoreComments" value="true"/>
<property name="severity" value="error"/>
<property name="message" value="bla bla bla"/>
</module>
</module>
</module>