pap*_*pus 33 java xml maven sonarqube
我有一个在maven中配置的项目,代码分析由SonarQube完成.
我正在尝试在pom.xml文件中配置SonarQube以从代码分析中排除一些文件.这些文件可以通过它们的类名来标识,它们在扩展名之前包含下划线字符(它们是元模型类).下面我给出了我尝试排除它们的pom.xml文件的一部分:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<sonar.sources>src/main/java</sonar.sources>
<sonar.exclusions>file:**/src/main/java/**/*_.*</sonar.exclusions>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
但是,上面的代码不起作用.有没有办法从我的pom.xml文件配置SonarQube以在分析源代码时忽略这些文件?
先感谢您.
Mik*_*kke 54
声纳排除(如其他声纳属性)必须添加到<properties> POM文件的部分.像这样(例如从当前项目中排除jOOQ自动生成的代码):
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<sonar.host.url>http://www.example.com/</sonar.host.url>
<sonar.jdbc.url>jdbc:postgresql://www.example.com/sonar</sonar.jdbc.url>
<sonar.jdbc.driver>org.postgresql.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.exclusions>org/binarytherapy/generated/**/*, **/GuiceBindComposer.java</sonar.exclusions>
<sonar.dynamic>reuseReports</sonar.dynamic>
</properties>
Run Code Online (Sandbox Code Playgroud)
Ana*_*ika 14
提到的类/包<sonar.exclusions>从Sonar的所有静态分析中<sonar.coverage.exclusions>排除给定的类,但是仅从coverage中排除给定的类/包,并且仍然要分析其他参数.
<properties>
<sonar.coverage.exclusions>
**/domain/**/*,
**/pojos/*
</sonar.coverage.exclusions>
</properties>
Run Code Online (Sandbox Code Playgroud)
参考:
资源:
在按照接受的答案进行声纳排除时,请确保遵循SonarQube 文档中的这种模式方法:
相对路径基于组件的完全限定名称(如下所示):
src/main/java/org/sonar/batch/phases/AbstractPhaseEvent.java
Run Code Online (Sandbox Code Playgroud)
例子:
# Exclude all classes ending with "Bean"
# Matches org/sonar.api/MyBean.java, org/sonar/util/MyOtherBean.java, etc.
**/*Bean.java
# Exclude all classes in the "src/main/java/org/sonar" directory
# Matches src/main/java/org/sonar/MyClass.java, src/main/java/org/sonar/MyOtherClass.java
# But does not match src/main/java/org/sonar/util/MyClassUtil.java
src/main/java/org/sonar/*
# Exclude all files in the "bank" directory and its sub-directories
# Matches bank/ZTR00021.cbl, bank/data/CBR00354.cbl, bank/data/REM012345.cob
bank/**/*
# Exclude all COBOL programs in the "bank" directory and its sub-directories whose extension is .cbl
# Matches bank/ZTR00021.cbl, bank/data/CBR00354.cbl
bank/**/*.cbl
Run Code Online (Sandbox Code Playgroud)
因此,如果要排除以“Bean”结尾的所有类和“src/main/java/org/sonar”目录(但不在其子目录中)中的所有类,请将以下sonar.exclusions属性添加到 pom 的properties:
<properties>
...
<sonar.exclusions>**/*Bean.java,src/main/java/org/sonar/*</sonar.exclusions>
</properties>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
59491 次 |
| 最近记录: |