shekhar verma
shekhar verma

Reputation: 499

Sonar Squid Error while sonar analysis with jenkins job through maven

I am using jenkins for continous integration build process through maven and using sonar for code review as well. jenkins job is working fine for creating build but when sonar analysis starts, it throw below error..

[ERROR] [19:19:47.494] Squid Error occurs when analysing :D:\Jenkins_New\jobs\Sample_Maven_Project\workspace\src\main\java\software\bean\UserBean.java

org.sonar.squid.api.AnalysisException: The source directory does not correspond to the package declaration software.bean " I'm stucked in this issue.

below is my project pom.xml file

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>nuc</groupId>
    <artifactId>nuc</artifactId>
    <version>0.1</version>
    <packaging>war</packaging>
    <name>nuc</name>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.4</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    <repositories>
        <repository>
            <id>neutrino-central-repository-Nexus</id>
            <name>Neutrino Central Repository</name>
            <url>http://10.1.50.56:9081/nexus/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>neutrino-central-plugin-repository-Nexus</id>
            <url>http://10.1.50.56:9081/nexus/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
    <build>
        <sourceDirectory>src</sourceDirectory>
        <resources>
            <resource>
                <directory>src</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>

            <resource>
                <directory>WebContent</directory>
                <targetPath>/${project.build.directory}/${project.build.finalName}</targetPath> 
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>



            <resource>
                <directory>src/META-INF</directory>
                <targetPath>/${project.build.directory}/META-INF</targetPath>
            </resource>
        </resources>
        <plugins>
        <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.2</version>
        </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
                    <webXml>WebContent/WEB-INF/web.xml</webXml>
                                    </configuration>
            </plugin>
        </plugins>
    </build>
</project>

Upvotes: 1

Views: 1031

Answers (1)

This error means that the ".java" source files are not located in a correct folder.

If your project is a Maven project, chances are that the ".java" source files are located in <project>/src/main/java - like the convention suggests it.

However, from what I see in your POM, you have set the source folder to be "src" instead of "src/main/java". This is why you get this error.

Upvotes: 1

Related Questions