防止checkstyle在特定的maven子模块中运行

Miq*_*uel 50 java checkstyle maven

我想在pom文件中定义一个checkstyle运行,并让它在除了某些指定的子模块之外的所有子模块上运行.

换句话说,我需要某种<excludes>(存在但适用于文件名)但是它以目标模块为目标.任何想法的人?

Hai*_*man 112

如果您不想更改pom.xml,可以使用-D选项从命令行将skip设置为true.上面提到的"覆盖了执行中的跳过参数".这与-Dmaven.test.skip = true用法非常相似.

mvn site -Dcheckstyle.skip=true
Run Code Online (Sandbox Code Playgroud)

  • 对于maven发布插件,请使用-Darguments =" - Dcheckstyle.skip = true". (5认同)

Ste*_*lly 68

将以下项目放在要禁用checkstyle的项目中:

<project>
  ...
  <properties>
    ...
    <checkstyle.skip>true</checkstyle.skip>
    ...
  </properties>
  ...
</project>
Run Code Online (Sandbox Code Playgroud)

Checkstyle仍将运行,但会执行无操作...

除非您覆盖maven-checkstyle-plugin skip参数的默认绑定,否则您可以在特定项目中实现与以下相同的效果

<project>
  ...
  <build>
    ...
    <plugins>
      ...
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <skip>true</skip>
        </configuration>
      </plugin>
      ...
    </plugins>
    ...
  </build>
  ...
</project>
Run Code Online (Sandbox Code Playgroud)

除非你skip在执行中覆盖了参数...但是如果你知道那是什么,你也知道解决方案并且不会问这个问题;-)