Uploaded image for project: 'Maven Checkstyle Plugin'
  1. Maven Checkstyle Plugin
  2. MCHECKSTYLE-104

CheckstyleViolationCheckMojo: More flexible checkstyle:check-inflicted build failures

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.2
    • None
    • checkstyle:check
    • None
    • Patch

    Description

      Hey guys,
      first of all let me thank you for the wonderful job that you all do. Our company's build process has rocketed a century forward after we replaced Ant with Maven.

      We're currently trying to migrate from Maven1 to Maven2. We have a Jelly goal in our old M1 build that does similar job to "checkstyle:check" in M2, but it verifies that a project does not have more than X Checkstyle Errors and Y Checkstyle Warnings. That was not entirely possible to configure with M2, where one can choose to fail the build on more than 0 Errors or Warnings, where 0 is not a configurable value in contrast with X and Y.

      I have scribbled several changes in

      /maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleViolationCheckMojo.java

      where I basically replaced the parameter violationSeverity with 3 new parameters (maxErrors, maxWarnings, maxInfos) allowing the user a more flexible configuration of checkstyle-inflicted build failures.

      Example :
      The configuration

      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <failsOnError>true</failsOnError>
          <maxErrors>0</maxErrors>
          <maxWarnings>100</maxWarnings>
           .....
        </configuration>
      ......
      

      will fail the build of a project that has more than 0 Checkstyle Errors or more than 100 Checkstyle Warnings.

      If you find such the feature useful and want to include it in some of the next releases of maven-checkstyle-plugin I will be happy to do the additional Documentation/Test Cases.

      Attachments

        1. CheckstyleViolationCheckMojo.java
          8 kB
          Kaloyan Enimanev

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kenimanev Kaloyan Enimanev
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: