我有一个使用kafka的java项目.我用sonarqube 5.0(声纳maven插件2.5)扫描它,我得到这个:[INFO] [13:48:22.488] Sensor JavaSquidSensor...
[INFO] [13:48:22.511] Java Main Files AST scan...
[INFO] [13:48:22.512] 8 source files to be analyzed
[ERROR] [13:48:22.655] Class not found: scala.Predef$$less
[ERROR] [13:48:22.655] Class not found: scala.Predef$$less$colon
[ERROR] [13:48:22.680] Class not found: scal...
SonarQube简介SonarQube是一款开源的代码质量检查工具,主要用于源代码的质量检查,是devops流水线中很常用的一个工具,以插件化的形式,支持多种编程/脚本语言的代码分析,同时也提供了对常用IDE工具的支持。Sonar环境搭建Linux下环境搭建安装包下载地址:https://www.sonarqube.org/downloads/工具分为社区免费版和开发版,官网下载可能比较慢,我已经下载好的版本存放在网盘中,有需要的可以从百度网盘下载即可:链接:https://...
1、".equals()" should not be used to test the values of “Atomic” classes. bug 主要 不要使用 equals 方法对 AtomicXXX 进行是否相等的判断 Atomic 变量永远只会和自身相等,Atomic 变量没有覆写 equals () 方法. 2、"=+" should not be used instead of "+=" bug 主要 “=+” 与 “=+” 意义不同 a =+ b; 虽然正确但写法不合规,应写成 a = +b; 3、"@NonNull" values should not be set to null bug 次要 标注非空假定非空且...
将SonarQube从4.0升级到4.2之后,我从带有Lombok批注的类中得到了一堆“未使用的私有字段应删除”错误.
我有@SuppressWarnings("PMD.UnusedPrivateField")在所有这些类的开头声明.当我使用SonarQube 3.7和4.0时,它运行良好.
我用mvn sonar:sonar生成SonarQube报告.
这显示了我的班级样子:@Data
@SuppressWarnings("PMD.UnusedPrivateField")
public class MyClass {private String field;
}如何摆脱4.2版中的这些错误?谢谢.解决方...
我在与声纳运行器和jacoco设置gradle时遇到问题.除了代码覆盖范围之外,一切都很好.我已经尝试了所有没有结果的东西.
这是我的build.gradle文件:apply from: './dependencies.gradle'def langLevel = 1.8allprojects {apply plugin: 'idea'apply plugin: 'eclipse'group 'pl.lodz.uml.sonda'version '1.0.0'
}subprojects {apply plugin: 'java'apply plugin: 'sonar-runner'apply plugin: 'jacoco'compileJava.options.encoding =...
问题:如何在提交之前使用Maven的sonarQube收集增量分析?
背景:我们使用SonarQube 4.1.2对使用Maven构建的Java项目执行分析.我们已将问题报告插件1.1安装到服务器上.
我已经在构建控制台中启用了增量报告,并且可以看到使用maven命令从Continuous Integration Server内部正确提供了增量数据:mvn org.codehaus.mojo:sonar-maven-plugin:2.3.1:sonar -P声纳-Dsonar.java.target = 1.7 -Dsonar.java.source = 1.7 -Dsonar.profil...
SonarQube对我的字符串格式化程序的使用提出了一个问题:Format specifiers should be used instead of string concatenation.我在下面的Java代码中使用了填充数字0.int paddingLength = seqLength - seqNoLength;
String.format("%0" + paddingLength + "d", seqNo);解决方法:引发此问题是因为您要将串联的字符串传递给格式化程序.如果要使用字符串格式,请使用字符串格式:int paddingLength = seqLength - seqNoLength;
String f...
我有一个Java项目.根据Jacoco eclipse插件(EclEmma Java代码覆盖率2.3.1.201405111647),该项目的代码覆盖率为22.3%.我生成.exec报告并将其提供给SonarQube并使用声纳运行器进行分析.结果,SonarQube的Web界面上显示的代码覆盖率为20.2%.软件包级别的coverage值也不同于Jacoco的eclipse插件显示的值.那怎么可能? SonarQube是否从Jacoco生成的.exec报告中获取值?解决方法:Jacoco基于字节码分析. exec文件与类文件结合在一起以获取...
我使用Java 8流代替许多旧样式for循环来迭代一堆结果并生成摘要统计信息.例如:int messages = IntStream.rangeClosed(0, 7).map(ids::get).reduce(Integer::sum).getAsInt();注意:我知道还有其他方法可以进行上面显示的计数.我这样做是为了说明我的问题.
我正在使用SonarQube 5.3和Java 3.9插件.在该配置中,上面的代码行违反了squid规则S2095:“资源应该被关闭”.这是我期望看到AutoCloseable(例如,FileInputStream)被打开但从未...
我没有在SonarQube中报告Java测试文件的ward违规,但我确实希望分析和显示JUnit和Cobertura代码覆盖(JUnit和代码覆盖率报告被重用,而不是由SonarQube执行).
如何仅从违规分析中排除测试文件?我尝试添加全局排除这些设置,但它们无法正常工作:**/test/**
**/Test*.*谢谢解决方法:SonarQube可以忽略某些组件和某些编码规则的问题.您可能希望阅读SonarQube Narrowing the Focus中的“忽略多个条件上的问题”部分.
如文档中所述:You c...
我有像java的代码try (FileInputStream fileInputStream = new FileInputStream(filePath);PrintWriter out = response.getWriter()) {while ((i = fileInputStream.read()) != -1) {out.write(i);}} catch (IOException e) {throw new IOException(e);}为此,我编写了所有测试,并使用Sonarqube作为代码覆盖工具.但不幸的是,有条件的覆盖率结果(测试涵盖了2个条件)将在我的捕获声明中出现.据我所知,有条件保险仅适用于条件检查.为什...
我有“TEST – *.xml”格式的JUnit测试报告,我正在尝试使用Ant将这些报告上传到SonarQube.我在build.xml文件中添加了以下属性,其中${reports.dir}计算到报告目录路径:<property name="sonar.dynamicAnalysis" value="reuseReports"/>
<property name="sonar.junit.reportsPath" value="${reports.dir}"/>以下是Ant任务的输出(某些信息已编辑):sonar:
[sonar:sonar] Apache Ant(TM) version 1.9.3 compiled on December 23 2013...
当我使用代码覆盖工具“Sonarqube”时,我试图在我的Java项目中忽略lombok注释,我研究了很多关于此的内容并且我结束了将此属性添加到“lombok.config”文件中:lombok.addLombokGeneratedAnnotation = true但是当我在IntelliJ中执行“mvn test”或“Run with coverage”选项时,我在控制台中遇到了这个错误:Unknown key 'lombok.addLombokGeneratedAnnotation' (C:\Projects\...\lombok.config:3)当然,生成的覆盖测试仍然不会忽略lo...
我尝试从5.1版本迁移到5.3版本的SonarQube. SonarQube插件:
> Cobertura 1.6.3(cobertura)> C#4.4(csharp)> Java 3.9(java)> XML 1.4(xml)> Git 1.0(scmgit)> SVN 1.2(scmsvn)> JavaScript 2.10(javascript)
我的项目使用Java,XML,JavaScript和jaCoCo代码覆盖.
客户端分析工作正常,但在服务器端集成期间我在日志中有堆栈跟踪:(end of logs)
2016.02.04 10:45:17 INFO [o.s.s.c.s.ComputationStepExecutor] Log scanner context ...
我目前正在使用具有良好覆盖率的gradle多模块Java项目和sonarqube 6.2与sonarJava插件4.10.0.1026.我正在使用Gradle 4.0.1,sonarqube插件2.5和jacoco 0.7.9!代码是java 8.
由于API驱动的开发,API测试在API项目中被编写为抽象测试,并从提供测试构造函数的实现项目中调用.
在分析sonarqube服务器上的项目时,实施项目的覆盖范围是正确测量的,但IMPL项目测试中包含的API项目的覆盖率为0.0%.这些项目的覆盖率结果将被忽略.
当简单地使...