首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SonarQube -如何使用它

SonarQube -如何使用它
EN

Stack Overflow用户
提问于 2013-11-15 23:57:46
回答 2查看 9.2K关注 0票数 7

我有一个简单的问题,可能有一个简单的答案,但我找不到它是什么。我们想要部署SonarQube以及Checkstyle和其他一些工具,但我们无法确定它是用于集中式服务器部署,还是在每个开发人员机器上部署?所有教程都展示了在不同机器上的安装和在本地主机中的使用,同时还有一个公共实例示例,并且要求和规范看起来确实像是服务。

另一方面,我不明白开发人员如何提交他们的代码来检查它是否在服务器上。

那么,简而言之,它是如何部署的?任何清单或类似的东西都会有很大的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-16 03:08:32

SonarQube (以前只是"Sonar")是一个基于服务器的系统。当然,您可以将其安装在本地计算机上(硬件要求最低)。但它是一个有数据库的中央服务器。

分析由一些声纳“客户端”软件执行,这些软件可以是声纳运行器、声纳ant任务、声纳Eclipse插件等。分析结果可以自动上载到服务器,在那里可以通过声纳Web应用程序访问它们。

在有许多开发人员的环境中,您应该运行构建服务器(例如Hudson或Jenkins),该服务器将自动声纳分析作为夜间构建的一部分。其他计划也是可能的,但开发人员应该知道何时可以更新服务器端分析结果。自动化分析的结果可以通过声纳Eclipse插件显示在单个开发人员的Eclipse编辑器中。

关于Sonar的架构文档非常稀少。我一直在寻找一张图片来可视化我刚才描述的内容,但找不到一张……

票数 10
EN

Stack Overflow用户

发布于 2014-02-12 20:40:04

SonarQube“运行时”架构有几个元素:

  1. SonarQube服务器。它包含一个数据库(例如,MySql)和一个嵌入式web服务器(Tomcat)。SonarQube服务器存储分析结果(指标),但不执行代码分析。此服务器提供了一个web UI,其中显示了项目的仪表板、各种指标以及深入到代码和管理选项。它使用可插拔的体系结构--您可以通过在开发人员机器上运行代码分析的plug-ins.
  2. Program添加/删除功能。有多种选择:(a)如果他们使用的是Eclipse或IntelliJ,他们可以使用各自的SonarLint插件,该插件提供了配置属性、菜单选项来运行分析、显示违规行为的视图等;(b)开发人员也可以通过maven (mvn sonar:sonar)或gradle (gradlew sonarqube)来运行代码分析;(c)开发人员可以通过一个名为SonarQube Runner的程序来执行各种代码分析。在开发人员机器上运行分析的所有这些程序选项都需要配置为与SonarQube服务器通信。例如,当您使用SonarLint在IntelliJ中运行代码分析时,指标将被上传到服务器。此服务器通常由所有开发人员共享,但也可以是在CI/CD服务器上运行代码分析的localhost.
  3. Program。构建软件项目的作业/管道可以配置为运行SonarQube代码分析。它可以通过maven或gradle完成,就像在开发人员的机器上一样,或者通过插件。有针对詹金斯、哈德森、竹子和其他人的SonarQube CI plug-ins。根据项目的大小,您可能希望将代码分析配置为每天只运行一次,而不是在每次提交代码或更改依赖项时运行。在CI服务器上执行的SonarQube代码分析同样会将生成的指标发送到SonarQube服务器。

SonarQube体系结构文档非常差(不是说缺少),所以很难全面了解。我希望这能帮到你。

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20005196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档