如何在maven pom中指定声纳检查样式排除的文件路径?

时间:2017-12-06 20:18:56

标签: maven sonarqube checkstyle

我有一个多模块Maven项目。我在一个最低级别的POM文件中添加了一个checkstyle排除文件,并为{P} <sonar.checkstyle.filters>指定了src/sonar_config/checkstyle.suppressions.file的相对路径。当我从其主目录中构建模块时工作正常。

当我编译(伟大的 - )父项目时,我收到了错误[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.0.2:sonar (default-cli) on project sdk: Can not execute Checkstyle: cannot initialize module SuppressionFilter - Unable to find: src/sonar_config/checkstyle.suppressions.file -> [Help 1]

我应该如何指定文件的路径,以便它可以从低级目录和父项目中正常工作?

2 个答案:

答案 0 :(得分:1)

sonar.checkstyle.filters=<module name="SuppressionFilter"><property name="file" value="build/check-style-suppression.xml"/></module>

使用此属性,并相对于项目根路径指定您自己的文件路径。

答案 1 :(得分:0)

它不漂亮,但功能齐全。

<sonar.checkstyle.filters> <![CDATA[<module name="SuppressionFilter"> <property name="file" value="${project.build.sourceDirectory}/../../sonar_config/checkstyle.suppressions.file" /> </module>]]> </sonar.checkstyle.filters>

如果有人有更好的方法来指明这一点,我就可以了。

我怀疑这必定是一个SonarQube错误,因为我发现FindBugs排除的简单路径并不适合我的Checkstyle排除。