1

我正在使用 jenkins 通过 maven 进行持续集成构建过程,并使用声纳进行代码审查。詹金斯的工作可以很好地创建构建,但是当声纳分析开始时,它会抛出错误..

[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:源目录与包声明software.bean不对应”我卡在这个问题上。

下面是我的项目pom.xml文件

<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>
4

1 回答 1

1

此错误意味着“.java”源文件未位于正确的文件夹中。

如果您的项目是一个 Maven 项目,那么“.java”源文件很可能位于<project>/src/main/java其中——就像约定所建议的那样。

但是,根据我在您的 POM 中看到的,您已将源文件夹设置为“src”而不是“src/main/java”。这就是您收到此错误的原因。

于 2013-06-04T07:11:08.213 回答