【发布时间】:2015-09-08 15:18:13
【问题描述】:
我对 Java 的 Checkstyle 插件有疑问。如果出现任何违规行为,我需要让整个多模块项目失败。在父 pom.xml 我有以下
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.ss.ita</groupId>
<artifactId>jresume</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<name>JResume</name>
<modules>
<module>common</module>
<module>persistence</module>
<module>business</module>
<module>logging</module>
<module>web</module>
</modules>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.16</version>
<executions>
<execution>
<id>validate</id>
<phase>validate</phase>
<configuration>
<configLocation>dev/checkstyle.xml</configLocation>
<encoding>UTF-8</encoding>
<consoleOutput>true</consoleOutput>
<failsOnError>true</failsOnError>
<failOnViolation>true</failOnViolation>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
我的 checkstyle.xml 放在 dev 文件夹中。
当我运行我的项目时
mvn clean install
它会打印所有违规的列表。但它不能让整个项目失败。它为所有模块打印成功。 我尝试同时使用 failsOnError 和 failOnViolation 。但是没用。In plugin documentation 有这些要求:
- 需要执行 Maven 项目。
- 需要对范围内的工件进行依赖性解析:测试。
- 目标是线程安全的并支持并行构建。
- 默认绑定到生命周期阶段:验证。
我哪里出错了。也许我以错误的方式编写了我的 pom.xml。请帮我解决这个问题。
【问题讨论】:
-
@ShmulikKlein 我尝试通过本教程完成我的任务。但结果是一样的
-
@Luchnik,你还有这个问题吗?
-
@MichalKordas 不,我添加了“violationSeverity”属性,现在效果很好。不过还是谢谢你的关心
标签: java eclipse maven checkstyle