2015-09-08 3 views
3

У меня возникли проблемы с плагином Checkstyle для java. Мне нужно провалить весь мультимодульный проект в случае каких-либо нарушений. В родителю pom.xml У меня есть следующиеCheckstyle в проекте Maven. Невозможно выполнить проект в случае нарушений

<?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 помещается в разработчика папки.

Когда я запускаю свой проект с

mvn clean install 

Он печатает список всех нарушений. Но это не может провалить весь проект. Он печатает SUCCESS для всех модулей. Я пытался использовать failsOnError и failOnViolation обоих. Но это не сработало. In plugin documentation есть такие требования:

  • Требуется проект Maven, который будет выполнен.
  • Требуется разрешение зависимости артефактов в области: тест.
  • Цель потокобезопасна и поддерживает параллельные сборки.
  • Становится по умолчанию фазе жизненного цикла: проверьте.

Где я ошибся. Возможно, я написал неправильный код pom.xml. Пожалуйста, помогите мне решить эту проблему.

+0

Может быть, это поможет: http://maven.apache.org/plugins/maven-checkstyle-plugin/examples/multi-module-config.html –

+0

@ShmulikKlein Я попытался выполнить свою задачу с помощью этого урока. Но результат тот же – Luchnik

+0

@Luchnik, у вас все еще есть эта проблема? –

ответ

5

Вероятно, вы забыли

<configuration> 
    ... 
    <violationSeverity>warning</violationSeverity> 
    ... 
</configuration> 

violationSeverity: Самый низкий уровень важности, что считается нарушением. Допустимыми значениями являются «ошибка», «предупреждение» и «информация».

Значение по умолчанию: error, что означает, что warning не приведет к сбою сборки maven.

подробнее в:

http://maven.apache.org/plugins/maven-checkstyle-plugin/check-mojo.html#violationSeverity

Смежные вопросы