【Java】 Maven多模块项目上传到Sonar扫描问题合集

上传到Soanr时,项目有单元测试数,但是覆盖率为0

修改pom.xml

                
                    org.apache.maven.plugins
                    maven-surefire-plugin
                    2.4.2
                    
                        false
                        true
                        
                            **/*Test.java
                        
                        
                            
                            
                        
                    
                
                
                    org.jacoco
                    jacoco-maven-plugin
                    0.7.9
                    
                        
                            pre-test
                            
                                prepare-agent
                            
                        
                    
                

必要时带上参数

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

多模块项目通过Jenkins构建扫描上传到Sonar时,代码覆盖率很低,只覆盖了单模块的代码,这时可以通过配置JaCoCo解决该问题。 参考资料

修改pom.xml

            
                org.jacoco
                jacoco-maven-plugin
                0.7.9
                
                    
                        
                            prepare-agent
                        
                    
                    
                        report
                        prepare-package
                        
                            report
                        
                    
                
            

通过clean org.jacoco:jacoco-maven-plugin:prepare-agent jacoco:report-aggregate install 可在target下生成jacoco-aggregate覆盖相关报告

注:jacoco版本低于0.7.9 jacoco:report-aggregate参数可能不存在 多模块项目整合覆盖率还可以指定report目录

 
        jacoco
        reuseReports
        ${project.basedir}/../target/jacoco.exec
         

 
         
            
                
                    org.jacoco
                    jacoco-maven-plugin
                    0.7.9
                    
                        ${sonar.jacoco.reportPath}
                        true
                    
                    
                        
                            
                                prepare-agent
                            
                        
                        
                            report
                            prepare-package
                            
                                report
                            
                        
                    
                
            
        
 

转载于:https://my.oschina.net/u/2254055/blog/2995752

你可能感兴趣的:(【Java】 Maven多模块项目上传到Sonar扫描问题合集)