<sonar.exclusions> in pom.xml (Maven multi-module project) works locally but not on company server

user3920253 picture user3920253 · Aug 8, 2014 · Viewed 22.9k times · Source

I'm using <sonar.exclusions> in pom.xml to exclude certain packages for unit test code coverage. I have set up Sonar locally and the exclusions reflect on the report. But then, the same exclusions are not honored on the company server.

I am using <sonar.skippedModules> which works as intended and skips the required modules perfectly fine on both environments.

Local Sonar version is Version 4.3.1 Company's Sonar version is Version 4.1.2

An example of how I have written <sonar.skippedModules> in one of the modules:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.mainClass>.....</project.mainClass>
    <sonar.exclusions>
        /src/main/java/../../../../../Package1/*,
        /src/main/java/../../../../../Package2/*,
        /src/main/java/../../../../../JavaClass1.java
    </sonar.exclusions>
    <sonar.language>java</sonar.language>
</properties>

Can you please help me understand why <sonar.exclusions> is honored only locally but not when I build the job (set up on Jenkins) to generate the Sonar report on the company server? Does the difference in the version matter?

Would absence of new-line character following the comma to separate the package names make a difference?

Answer

Nirav Shah picture Nirav Shah · Aug 8, 2014

Try this, I had same issue and it worked for me

Don't start with "/src/main/java/" Instead start with "com/companyname/projectname/"

I personally prefer "**com/companyname/projectname/../**"