如果匹配正则表达式,则强制maven构建失败

时间:2013-05-24 19:10:23

标签: java maven

如果某些正则表达式与src代码匹配,那么使mvn构建失败的最简单方法是什么?

我找到的最好的解决方案(hacky)正在使用maven-replacer-plugin并使用正则表达式将代码替换为生成编译失败的代码。

2 个答案:

答案 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>