我有一段带有字段注入(inject)的代码,我正试图将其转换为使用构造函数注入(inject)。初始代码如下所示:@AutowiredprivateEnvironmentenv;@AutowiredprivateYYYAdaptoryyyAdaptor;@AutowiredprivateJAXBContextjaxbContext;这就是我重写它的方式:privateEnvironmentenv;privateYYYAdaptoryyyAdaptor;privateJAXBContextjaxbContext;@AutowiredpublicYYYResource(Environmen
我正在使用SonarQube5.4并调查几个问题的抑制。我发现一旦我插入@SuppressWarnings("common-java:DuplicatedBlocks"),SonarQube就没有检测到抑制规则Sourcefilesshouldnothaveanyduplicatedblocks在文件的开头(文件无法编译)或在其中一个重复代码块的标记处。我在http://docs.sonarqube.org/display/PLUG/Java+FAQ找到了信息声明如下:The//NOSONARtagisusefultodeactivateallrulesatagivenlinebuti
我已经检查了链接:sonarqubeissuesreport,但不清楚如何在Maven构建期间实现它。 最佳答案 如文档所述,问题报告插件与5.1及更高版本不兼容。SonarLintforCommand-Line应该用来获得相同的功能。使用Maven启用很简单:mvnsonar:sonar-Dsonar.analysis.mode=preview-Dsonar.issuesReport.html.enable=true生成的HTML报告的路径显示在日志中:[INFO]HTMLIssuesReportgenerated:/xxx/ta
我如何知道针对哪个版本的JavaSonarQube验证代码?是JVM的版本吗?如果我的项目基于不同的版本怎么办? 最佳答案 默认值为1.5。要设置合适的版本,需要设置sonar.java.source属性(property)告知PMD您的源代码符合哪个版本的Java。可能的值:1.4、1.5或5、1.6或6、1.7或7。从插件的2.2版本开始,此属性也可以设置为1.8或8。如果您使用的是ant任务,只需添加:如果您使用的是SonarRunner,只需将以下行添加到文件/conf/sonar-runner.properties:son
我正在运行jacoco插件来生成html、xml和jacoco.exec报告来衡量由我的testNg测试的代码的覆盖率测试。我在本地和Jenkins中成功生成了这些报告,我所有的单元测试结果都反射(reflect)在Sonar中,它向我展示了覆盖范围.我的jacoco.exec有模块和依赖模块的覆盖结果。我已经使用eclipse的eclemma插件验证了这一点。我没有在Sonar的依赖模块中获得覆盖结果。我做错了什么。我的插件是这样的org.jacocojacoco-maven-plugin0.7.7.201606060606prepare-agentreportprepare-pac
过去,我通过执行“添加构建后操作->SonarQube”在Jenkins中配置Sonar。现在,当我这样做时,我收到了这个警告:ItisnolongerrecommendedtouseSonarQubemavenbuilder.ItispreferabletosetupSonarQubeinthebuildenvironmentanduseastandardJenkinsmaventarget.为了解决这个问题,我使用了这个Maven插件org.sonarsource.scanner.mavensonar-maven-plugin3.0.1在Jenkins的工作中,我执行以下目标-Uc
我想我在使用@Getter时发现了误报来自ProjectLombok的注释.在下面的示例类中,我收到警告“仅用作方法中的局部变量的私有(private)字段应成为局部变量”(squid:S1450)。publicclassExample{@GetterprivateStringexampleField;//有人可以证实吗?是SonarQube规则中的错误还是我的类(class)或我对该规则或@Getter注释的理解有问题?为了完整起见:项目lombok注释或生成的方法在其他SonarQube规则中被正确识别。所以我认为我的设置很好。我还尝试将@Getter注释放在类级别,但我收到了同样
我了解什么是认知复杂性以及如何计算它,但是我现在没有如何确定该量度的好价值,因此我的代码不可能多么复杂。我需要一种客观的方法来估算它,而无需将项目相互比较。一种公式,例如“复杂性/线代码”或类似的公式。或者,如果我为大型项目定义了质量门,我如何计算其值。看答案在方法级别上,建议最大15。在班级级别,这取决于您在软件包中的期望。例如,在一个只能举行字段和简单的Getters或Setters类的软件包中,具有0(5?10?)认知复杂性的类可能还值得另一个外观。另一方面,在拥有业务逻辑类的软件包中,类得分>=...150(?)可能表明是时候考虑分配课程了。就项目的限制是什么,这是无法回答的,并
SonarQube对我的项目的分析失败了5.6,从版本3.14更新Java插件后至4.0.在我的SonarQube实例中,在其他插件中,我目前有Findbugs插件(版本3.3)和Cobertura插件(1.6.3),它们需要Java插件。查看日志,我收到以下消息:[ERROR]Failedtoexecutegoalorg.sonarsource.scanner.maven:sonar-maven-plugin:3.1-build231:sonar(default-cli)onprojectMyProject:Executiondefault-cliofgoalorg.sonarsou
一、先安装postgresql数据库和jdk17版本从SonarQube8.2开始,官方不再支持MySQL数据库,因此这里使用postgresql数据库数据库安装步骤1.先在postgresql官方下载https://www.postgresql.org/ftp/source/我用的13版本把压缩文件上传到linux服务器的/usr/local/src目录解压tar-zxvfpostgresql-13.0.tar.gz编译源码并安装创建postgres用户:启动数据库要用这个用户权限启动useraddpostgres创建安装目录和启动日志文件mkdir/usr/local/pgsqlchown