[Javaの] Mavenのマルチモジュールプロジェクトが収集ソナースキャンの問題にアップロード

Soanrにアップロードすると、プロジェクトは、ユニットテストの数を持っているが、適用範囲は0であります

pom.xmlを修正

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.4.2</version>
                    <configuration>
                        <skipTests>false</skipTests>
                        <testFailureIgnore>true</testFailureIgnore>
                        <includes>
                            <include>**/*Test.java</include>
                        </includes>
                        <excludes>
                            <!--<exclude>**/Abstract*.java</exclude>-->
                            <!--<exclude>**/*Service.java</exclude>-->
                        </excludes>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>0.7.9</version>
                    <executions>
                        <execution>
                            <id>pre-test</id>
                            <goals>
                                <goal>prepare-agent</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

必要に応じて、パラメータをもたらすために

clean cobertura:cobertura -Dcobertura.report.format=xml package -Dmaven.test.failure.ignore=true sonar:sonar -Dsonar.language=java

ジェンキンスによってソナーにアップロードマルチモジュールプロジェクトをスキャンする場合、コードカバレッジは、単一のコードモジュールを覆う、非常に低く、問題はJaCoCoを構成することによって解決することができます。
参考資料

pom.xmlを修正

            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.7.9</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>report</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

することによりclean org.jacoco:jacoco-maven-plugin:prepare-agent jacoco:report-aggregate install、ターゲットで生成されるjacoco-aggregateレポートカバー

注意:0.7.9より前のjacocoバージョンjacoco:report-aggregateパラメータが存在しないことがあり
ますが、指定することもできカバレッジを統合するマルチモジュールプロジェクトreportディレクトリを

 <properties>
        <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
        <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
        <sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>
 </properties>        

 <build>
         <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>0.7.9</version>
                    <configuration>
                        <destFile>${sonar.jacoco.reportPath}</destFile>
                        <append>true</append>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>prepare-agent</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>report</id>
                            <phase>prepare-package</phase>
                            <goals>
                                <goal>report</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
 </build>

おすすめ

転載: www.cnblogs.com/xcmelody/p/10961121.html
おすすめ