问题标签 [sonarqube-5.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sonarqube - sonarqube 增量分析不适用于团队配置
我已经在本地机器上配置了 sonarqube 服务器以运行,并且我使用分析模式提交了初始项目。此外,我为开发人员创建了一个 ant 目标,以增量模式运行以查看他们的新问题。我在声纳服务器上安装了问题报告,并从 ant 文件中使用它来生成 html 文件。
但是,当每个开发人员与 svn 同步并运行 ant 目标时,他们会看到其他开发人员在新问题下的违规行为,而不仅仅是他们的问题。
我希望 sonarqube 插件只扫描开发人员新编辑的文件,而是显示其他开发人员引入的所有新文件。
为了使其正常工作,我必须从我的机器上运行分析模式。然而,这只为我解决了这个问题,我的同事仍然认为所有违规行为都是新的。
SonarQube 如何确定问题是否是新问题?如果每个开发人员每次都必须进行全面分析,这将是一笔巨大的开销。有什么我想念的吗?
提前感谢您的时间和帮助。
sonarqube - 声纳循环依赖问题
我从 Sonar 那里得到了很多这些违规行为,但我认为它们并不是真正的循环。
所以例如我有:
de.codeplumber.core.abc.core.Holder.java
de.codeplumber.core.xyz.core.User.java
Holder.java 使用 User.java 作为属性之一,并具有用于获取和设置 User 对象的 getter 和 setter。下面是 Holder.java 的代码
现在 Sonar 正在报告 Holder.java 中的违规行为
移除对源文件“de/codeplumber/core/xyz/core/User.java”的依赖以打破一个包循环。
User.java的包对Holder.java的包没有反向依赖。
我不明白为什么声纳报告这个问题。以前我在其他一些类中有循环依赖,我修复了它,因为存在直接循环依赖。
任何帮助表示赞赏。
sonarqube - 有没有办法使用外部 sonar.properties 文件启动 sonarqube 服务器?
我想知道是否有办法使用外部 sonar.properties 和 wrapper.conf 文件启动 SonarQube (5.0.1) 服务器。
我正在寻找类似于 apache "-f" 选项的东西-
谢谢。
==================================================== ======
正如下面的答案中提到的,我尝试使用环境变量引用属性。这适用于某些属性。前任。sonar.jdbc.username & sonar.jdbc.password
作为具有多个环境变量的属性值,它对我不起作用。
前任。sonar.jdbc.url=jdbc:mysql://${env:MYSQL_HOST}:${env:MYSQL_PORT}/sonar= ?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
这是我得到的例外 -
==================================================== ========
我也尝试过只有一个环境变量 -
得到这个例外 -
如果我对 mysql 主机 url 进行硬编码,这将有效。
与 URL 格式有关,仍在调试中...
maven - Maven 使用 ar 配置时詹金斯声纳的路径
我是 CI 新手,因为我们正在将项目从瀑布转移到 CI。使用ear project pom.xml时,我可以从svn进行maven构建,但是当尝试将项目与声纳集成时,我已经在jenkins的scm路径中添加了源项目pom.xml。然后我收到以下错误。
Caused by: svn: E175002: REPORT /svn/repos/projectname/!svn/vcc/default failed
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
... 32 more
在这里,我在jenkins的scm路径中添加了源项目pom.xml和ear项目pom.xml,我怀疑声纳会选择哪个路径。
code-coverage - 使用 ClaearCase 8 和 SonarQube 5 的新代码的代码覆盖率
我们正在使用 SonarQube 5.0 对我们的 java 项目进行代码分析,并使用 JaCoCo 生成覆盖率报告。使用的 SCM 是 clearcase 8。
我们想使用 Sonar ClearCase 插件来获得新代码的代码覆盖率。但是它失败说它找不到 cleartool 命令。由于我们使用的是 ClearCase 8,因此我们使用 rcleartool 而不是 cleartool 作为命令行实用程序。
有什么方法可以使用 ClearCase 8 找到新代码的代码覆盖率
tcp - SonarQube 远程访问被防火墙阻止
我已经在我的 Windows 机器上设置了 SonarQube,一切都在本地完美运行。我打开了端口 9000(声纳的默认端口),但是发送到该端口的所有数据包 - 来自远程机器 - 都被丢弃,可能是什么问题?
2015-03-11 12:57:15 ALLOW TCP 127.0.0.1 127.0.0.1 54747 9000 0 - 0 0 0 - - - RECEIVE
2015-03-11 13:01:50 DROP TCP remote-address server-address 58282 9000 60 S 1212141581 0 14600 - - - RECEIVE
2015-03-11 13:01:50 DROP TCP remote-address server-address 58283 9000 60 S 957699206 0 14600 - - - RECEIVE
声纳设置为侦听来自任何 IP 的连接:
TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING
*当我禁用防火墙时,我可以远程连接。
ant - JSCover - 排除覆盖文件
目前试图让 JSCover 排除用作库的 js 文件。我在下面有一组 ant 脚本
- 启动 JSCover 服务器
- 运行并生成 Json 报告
- 停止服务器
最后,我有一个 shell 命令将 Json 文件转换为 LCov,以便我可以将它与 sonarqube 一起使用。我也在 jscoverage.html 中获得了报道,但它包含了 web/ 下的每个文件,这是我不想要的。下图
蚂蚁脚本如下:
我的文件夹结构是:
最后,我的声纳独立分析设置:
所以,似乎正在发生的事情是 JSCover 正在递归地读取所有 js 文件,我无法阻止声纳或蚂蚁。
任何人都可以解释一下吗?
sonarqube - SonarQube - 临时目录不可写
我正在安装 SonarQube v5.0.1。
我正在运行 Windows Server 2012 64 位、Java 1.8 64 位和 SonarQube windows-x86-64 包装器。
SonarQube 不断抛出以下错误:
为什么 SonarQube 一直尝试写入 C:\Windows\System32\config\systemprofile\AppData\Local 而不是 C:\Windows\SysWOW64\config\systemprofile\AppData\Local?
为了摆脱以前安装中的这个错误,我不得不在 C:\Windows\System32\config\systemprofile\AppData\Local 中创建一个 Temp 文件夹,并使用读/写设置和/或权限来让 SonarQube 停止抱怨。
更新:这是一个大问题,因为我无法将 SonarQube 作为 Windows 服务启动。奇怪的是,我已经安装了 SonarQube 并作为 Windows 服务运行。今天,我停止了服务,现在我无法再启动服务了。我已将 Temp 文件夹的权限设置为非只读,因此每个人都拥有完全控制权(不理想,我知道......)
尽管如此,Temp 错误仍会阻止 SonarQube 启动。
sonarqube - SonarQube - 无法加载 Wrapper 的本机库“wrapper.dll”
我正在安装 SonarQube v5.0。
我正在运行 Windows Server 2012 64 位(虚拟操作系统)、Java 1.8 64 位和 SonarQube windows-x86-64 包装器。
SonarQube,无论是通过 StartSonar.bat 以管理员身份使用命令提示符还是作为 Windows 服务运行,都会不断抛出以下警告:
我在网上找到的唯一信息是 2010 年的一些 JIRA,它们并没有真正帮助我。我无法在此 Windows 安装上创建声纳用户。我的 CI 环境中的所有其他工具都在 Java 1.8 64 位上运行,这意味着 JAVA_HOME 设置为 JDK 1.8 64 位。我真的不想运行 Java 32 位和 32 位 Wrapper。这意味着 wrapper.conf 顶部的 JRE bin/java 路径必须指定 32 位 JRE。
我能做些什么来摆脱这个警告?
jacoco - 使用 sonarqube-5.0.1 和 java 8 在声纳报告中未显示单元测试覆盖率
请帮助我解决单元测试覆盖率未在声纳报告中显示的问题。
Pom 文件
我使用了 JaCoCo 插件,如下所示
任何人都可以帮助我使用上述插件的步骤我正在使用 mockito 进行测试用例。