http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
Sonar 概述
Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。
与 持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。
在对其他工具的支持方面,Sonar 不仅提供了对 IDE 的支持,可以在 Eclipse 和 IntelliJ IDEA 这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar。
此外,Sonar 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。
Sonar 的安装
Sonar 是 Codehaus 上面的一个开源项目,使用的是 LGPL V3 软件许可。我们可以在其官方网站上下载其源代码及安装包。
其源代码需要使用分布式版本控制软件 Git 进行检出(Check Out),命令行方式如下:
git clone git://github.com/SonarSource/sonar.git
本文主要介绍 Sonar 的使用方法,只需要到 Sonar 网站下载最近的发行包即可,本文写作时最新的版本为 2.11。
下载 zip 包后,直接解压到任意目录,由于 Sonar 自带了 Jetty 6 的应用服务器环境,所以不需要额外的安装就可以使用,值得一提的是 Sonar 也支持部署在 Apache Tomcat 应用服务器中。
在 windows 环境中,直接启动 Soanr 的 bin 目录下 windows-x86-64\StartSonar.bat 即可。
然后在浏览器中访问:http://localhost:9000/
图 1. Sonar 访问界面
这样就成功安装并启动了 Sonar,但其中没有安装插件,需要用户下载并安装自己所需要的插件。本节以 Quality Index Plugin 为例,介绍如何下载及安装 Sonar 插件。
首先访问 Sonar 主页中 Dashboard > Sonar > Documentation > Sonar Plugin Library 路径
图 2. Sonar 插件的下载
进入 Quality Index 插件,点击下载路径
图 3. Quality Index Plugin 下载
然后将下载的 sonar-quality-index-plugin-1.1.3.jar 文件放到 sonar-2.11\extensions\plugins 路径下。重启 Sonar,该插件就在 Sonar 的平台上运行并开始工作。
数据库设置
Sonar 默认使用的是 Derby 数据库,但这个数据库一般用于评估版本或者测试用途。商用及对数据库要求较高时,建议使用其他数据库。Sonar 可以支持大多数主流关系型数据库(例如 Microsoft SQL Server, MySQL, Oracle, PostgreSQL 等)
本文以 MySQL 为例说明如何更改 Sonar 的数据库设置:
- 在 MySQL 中创建 sonar 用户
CREATE USER sonar IDENTIFIED BY 'sonar'; GRANT ALL PRIVILEGES ON *.* TO 'sonar'@'localhost' \ IDENTIFIED BY 'sonar' WITH GRANT OPTION;
- 将 MySQL 的驱动文件(如 mysql-connector-java-5.1.13.jar)拷贝到 sonar-2.11\extensions\jdbc-driver\mysql 目录
- 修改 sonar-2.11\conf\sonar.properties 文件,用 # 注释原来 Derby 的配置项,并打开 MySQL 数据库的配置项:
# Comment the following lines to deactivate the default embedded database. #sonar.jdbc.url: jdbc:derby://localhost:1527/sonar;create=true #sonar.jdbc.driverClassName: org.apache.derby.jdbc.ClientDriver #sonar.jdbc.validationQuery: values(1) ~~~~~~~~~~~~~~~省略部分~~~~~~~~~~~~~~~~~~ #----- MySQL 5.x/6.x # Comment the embedded database and uncomment the following #properties to use MySQL. The validation query is optional. sonar.jdbc.url: \ jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8 sonar.jdbc.driverClassName: com.mysql.jdbc.Driver #sonar.jdbc.validationQuery: select 1
- 重启 Sonar。
相关推荐
### Sonar Code Quality Testing Essentials #### 一、书籍概述与目标读者 《Sonar Code Quality Testing Essentials》是一本专为Java开发者和团队管理者设计的书籍,旨在帮助他们通过使用Sonar工具来提升代码质量...
sonar-gitlab-plugin-4.0.0.jar sonar-l10n-zh-plugin-1.28.jar sonar-pmd-plugin-3.2.0-SNAPSHOT.jar sonar-scanner-cli-4.0.0.1744-linux.zip sonarqube-7.8.zip
Integrates detekt for code analysis Default quality profile Detekt way Syntax highlighting Supports SonarQube 6.7.3 and up Supports detekt's yaml config and baseline.xml (also path filters) Usage ...
sonar eclipse插件sonarlint,原先的插件已经被启用,这是最新的,如果连接本地sonar服务器,需要在eclipse.ini中配置启动参数,参数为org.sonarlint.eclipse.core/server_url 值为sonar服务器地址,如果不配置默认...
### Sonar实战:从入门到进阶 #### 知识点概述 Sonar是一个功能强大的代码质量管理平台,专为软件开发团队设计,旨在帮助他们监控、管理和改进代码质量。Sonar不仅提供了静态代码分析,还涵盖了动态分析(如单元...
SonarLint是一款代码检测插件,它能够集成到Eclipse和IntelliJ IDEA这类的集成开发环境(IDE)中,帮助开发者实时地在IDE上检测代码中的问题。SonarLint可以检测多种编程语言,如Java、JavaScript、PHP和Python等,...
sonar4版本扫描辅助程序. 向服务器上传代码并做扫描分析. 使用方式: CMD切换到项目根目录下(sonar-project.properties文件所在目录)运行 sonar-runner
SonarLint是一款强大的静态代码分析工具,用于检测代码中的潜在问题和缺陷,它可以在编码阶段就帮助开发者发现并修复代码的不良实践。SonarLint 4.0.0是该工具的一个版本,针对IntelliJ IDEA(简称Idea)提供了一个...
### Sonar Runner 进行代码质量监控 #### 一、Sonar环境搭建 为了实现代码的质量监控,首先需要搭建Sonar环境。以下是详细的步骤: 1. **安装JDK-1.5以上版本**:Sonar需要Java环境支持,因此首先要确保安装了JDK...
利用java代码,调用sonar接口,实现在sonar里面创建,更改,用户,组,权限等一系列操作
2. **代码质量规则**: SonarScanner内置了一套详尽的代码质量规则,包括代码异味(Code Smell)、bug、漏洞和复杂性等多个维度的检查。 3. **自定义规则**: 开发团队可以根据自身需求定义额外的代码质量规则,...
《Fisher Sonar数据集与线性判别分析在分类中的应用》 Fisher Sonar数据集,全称为fisher_sonar或fishersonar,是机器学习领域中一个广泛使用的分类问题实例,主要应用于训练和测试算法的性能。这个数据集源自声纳...
SonarLint是一款强大的静态代码分析工具,用于在开发过程中实时检测代码质量问题。它与SonarQube服务器相结合,可以提供更全面的代码质量管理。这款插件适用于多种集成开发环境(IDE),包括Eclipse。"sonarlint-...
SonarLint是一款强大的代码质量检测工具,可在编码阶段就发现潜在的错误和安全漏洞,支持多种IDE,如Eclipse、IntelliJ IDEA和Visual Studio Code。它提供清晰的修复指导,帮助开发者在提交代码前进行修复。与...
sonar使用教程涵盖了在Linux环境下搭建SonarQube环境的详细步骤。SonarQube是一个开源平台,用于持续检测代码质量,支持多种编程语言。在本教程中,主要讲述了如何在具有CentOS 7.0操作系统的Linux环境下进行...
"sonar汉化包"是针对SonarQube的中文语言包,使得用户界面更加友好,方便中国开发者使用。本文将详细介绍SonarQube以及与汉化相关的插件。 首先,SonarQube的核心功能包括静态代码分析、代码复杂度计算、代码覆盖率...
"sonar中文插件1.28"是专门为SonarQube设计的一个本地化插件,目的是为了提供中文界面和支持,便于中国开发者更加便捷地使用SonarQube进行项目分析和质量管理。 这个插件的版本号是1.28,表明它是针对SonarQube某个...
4. **跨平台支持**:除了Eclipse之外,SonarLint还支持其他IDE,如IntelliJ IDEA、Visual Studio Code等,确保开发者无论使用何种环境都能享受到一致的体验。 5. **自定义规则**:用户可以根据项目的特殊需求自定义...
Sonar7.8版本mybatis插件
SonarLint原生集成在IntelliJ IDEA中,但有时可能会遇到与其它插件如`scalint`的兼容性问题,因此,本篇将介绍如何进行SonarLint的离线傻瓜式安装。 首先,由于在线安装SonarLint时可能会遇到版本不匹配或验证失败...