Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,比如pmd-cpd、checkstyle、findbugs、Jenkins。通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。
1. 配置数据库
创建sonar数据库
create database sonar default charset=utf8;
配置 sonar 用户
create user 'sonar' identified by 'sonar123'; grant all on sonar.* to 'sonar'@'%' identified by 'sonar123'; grant all on sonar.* to 'sonar'@'localhost' identified by 'sonar123'; flush privileges;
2. 下载sonar和sonar-runner、sonar汉化包(sonar-l10n-zh-plugin)
Sonarqube安装的环境要求: java和mysql。
3. 修改 sonarque和 sonar-runner 的配置
编辑 ${SONAR_HOME}/conf/sonar.properties 配置数据库
sonar.jdbc.username=sonar sonar.jdbc.password=sonar123 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
编辑 ${sonar-runner_home}/conf/sonar-runner.properties 配置数据库
sonar.host.url=http://localhost:9000 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8 sonar.jdbc.username=sonar sonar.jdbc.password=sonar123 sonar.sourceEncoding=UTF-8 sonar.login=admin sonar.password=admin
4. 设置环境变量 (Mac OSX)
sudo vi ~/.bash_profile # sonar config export SONAR_HOME=/Users/jiangzhiqiang/dev/sonarqube-5.1.1 export SONAR_RUNNER_HOME=/Users/jiangzhiqiang/dev/sonar-runner-2.4 export PATH=${PATH}:${SONAR_RUNNER_HOME}
使配置生效
source ~/.bash_profile
查看配置是否生效
echo $SONAR_HOME
在命令行里执行 sonar-runner -h 如果显示内容, 则sonar-runner配置成功。
5. 安装插件
1. 使用Update Center, 用管理员账号登录 “Administer System” 后, Settings —> System —>
Update Center —> Available Plugins , 搜索合适的插件安装。
2. 下载插件,放在 $SONARQUBE_HOME/extensions/plugins
3. 重启 sonar
./sonar.sh restart
重启 sonar 后安装的插件才会生效。
6. 启动 sonar
目录切换至sonar的<install_directory>/bin/linux-x86-64/目录,启动服务
./sonar.sh start 启动服务
./sonar.sh stop 停止服务
./sonar.sh restart 重启服务
启动 sonar 服务后,访问 http://localhost:9000
或 ps aux|grep sonar 显示 —>
jiangzhiqiang 705 0.1 2.9 3817144 240372 ?? S 3:15下午 0:27.72 /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/jre/bin/java -Djava.awt.headless=true -Xmx1G -Xms256m -Xss256k -Djava.net.preferIPv4Stack=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/Users/jiangzhiqiang/dev/sonarqube-5.1.1/temp -cp ./lib/common/*:./lib/search/* org.sonar.search.SearchServer /var/folders/72/0c884kmd7m1d4qsg1jcfm5540000gn/T/sq-process2282470883822622271properties
为启动成功。
7. 为项目配置 sonar runner 运行需要的配置
在项目的根目录创建 sonar-project.properties,内容:
# required metadata # projectKey 是项目的唯一标识,不能重复 sonar.projectKey=pattern sonar.projectName=pattern sonar.projectVersion=1.0 sonar.sourceEncoding=UTF-8 sonar.modules=java-module #sonar.modules=java-module,javascript-module,html-module # Java module java-module.sonar.projectName=Java Module java-module.sonar.language=java # sources为源码目录 java-module.sonar.sources=src # .表示projectBaseDir指定的目录 java-module.sonar.projectBaseDir=. # binaries为编译后的classes目录,这个目录要注意一下, # 如果都在bin下面或者目录还有很多层级才到classe目录,可以直接为sonar.binaries=bin, # sonar会自动遍历所有目录 sonar.binaries=target/classes # JavaScript module #javascript-module.sonar.projectName=JavaScript Module #javascript-module.sonar.language=js #javascript-module.sonar.sources=js #javascript-module.sonar.projectBaseDir=webapp # webroot \src\main\webapp # Html module #html-module.sonar.projectName=Html Module #html-module.sonar.language=web #html-module.sonar.sources=pages #html-module.sonar.projectBaseDir=webapp
8. 项目分析
在项目目录路径运行 sonar-runner -X, 即对项目进行分析,成功后访问http:\\localhost:9000 查看分析的结果。
注:加 -X 是debug模式。
相关推荐
SonarLint原生集成在IntelliJ IDEA中,但有时可能会遇到与其它插件如`scalint`的兼容性问题,因此,本篇将介绍如何进行SonarLint的离线傻瓜式安装。 首先,由于在线安装SonarLint时可能会遇到版本不匹配或验证失败...
Sonar 配置与安装 Sonar 是一款功能强大的代码检查工具,能够对代码进行静态分析,检测代码中存在的缺陷和问题。Sonar 的配置和安装是使用 Sonar 的前提,下面将详细介绍 Sonar 的安装和配置过程。 Sonar 简介 ...
### sonar安装及使用说明 #### 一、环境要求 为了确保SonarQube能够正常运行,必须满足一定的系统环境要求。具体来说: - **Java版本**:SonarQube推荐使用JDK 1.8及以上版本。这是因为较新的Java版本能够提供更...
**Sonar 安装与配置** Sonar 是一款代码质量管理工具,用于检测代码质量、缺陷和代码异味。安装Sonar主要包括以下步骤: 1. **下载Sonar**: 从Sonar官网获取最新版本(如Sonar 4.0)并解压。 2. **启动Sonar**: ...
2. **创建数据库用户**:在数据库管理系统中创建一个名为`SONAR`的用户,密码设置为`SONAR`,确保该用户有权限访问和操作SonarQube所需的表。 3. **配置数据库驱动**:将Oracle JDBC驱动jar包复制到SonarQube的`/...
### SonarQube安装与配置详解 #### 一、SonarQube安装前的环境准备 在进行SonarQube的安装之前,首先需要确保服务器上已经安装好了MySQL数据库,并且为SonarQube创建了专用的数据库及用户。以下是具体的步骤: 1....
【SonarLint插件安装】 SonarLint是一款强大的代码质量检测工具,可在编码阶段就发现潜在的错误和安全漏洞,支持多种IDE,如Eclipse、IntelliJ IDEA和Visual Studio Code。它提供清晰的修复指导,帮助开发者在提交...
### Sonar的安装和使用详解 #### 第一章:Sonar简介 SonarQube(简称Sonar)是一个全面的代码质量管理平台,旨在帮助开发者、项目经理及组织维护和提高源代码质量。它不仅是一个报告工具,更是一个集成了多种功能...
在安装使用SonarLint之前,需要准备以下环境依赖。SonarLint是开源且免费的插件,不过它需要运行在Java8环境下,并且需要与SonarQube 5.6+版本配合使用。同时,SonarQube服务器端也有其环境要求,比如支持Mysql版本...
2. 在Linux系统上配置Java环境,SonarQube需要Java运行环境,确保JDK已经安装并且`JAVA_HOME`环境变量设置正确。 3. 将SonarQube目录移动到期望的安装位置,如 `/opt/sonarqube`。 4. 修改`sonarqube-6.2/conf/sonar...
Sonar不仅提供了静态代码分析,还涵盖了动态分析(如单元测试)、系统分析、人工代码审查、历史版本分析以及与持续集成(CI)系统的集成。Sonar的灵活性和广泛的支持使其成为代码质量管理领域的“神器”。 #### ...
在配置了MySQL后,需在Sonar的配置文件中设置相应的数据库连接参数。在`conf/sonar.properties`文件中,取消Derby数据库配置的注释,启用MySQL的配置: ```properties #----- MySQL 5.x/6.x # Comment the embedded...
SonarLint 4.0.0是该工具的一个版本,针对IntelliJ IDEA(简称Idea)提供了一个离线安装插件,以解决在线安装速度慢的问题。 在开发环境中,SonarLint能够与SonarQube或SonarCloud集成,获取项目特定的代码质量规则...
sonar-runner.properties配置文件中需要设置sonar.host.url来指定SonarQube服务器的地址和端口,sonar.jdbc.url、sonar.jdbc.username和sonar.jdbc.password来配置与数据库的连接信息。此外,sonar.sourceEncoding...
**SonarQube Eclipse 插件安装与使用详解** SonarQube 是一款强大的静态代码分析和代码质量管理工具,它能够帮助开发人员发现并修复代码中的潜在问题,提高代码质量。而 SonarQube Eclipse 插件则将这种功能集成到...
安装这些插件后,SonarQube可以全面覆盖C#、Java和JavaScript等多种语言的代码质量管理,并且通过与SCM(Subversion和Git)的集成,实现代码变更与质量之间的关联分析。而汉化包的加入,无疑提高了中国开发者使用...