记录了sonar的安装与配置,以及maven项目的sonar分析。
环境
Red Hat 4.1.2 x86-64
sonar-3.7.4,
下载地址
配置
配置文件目录
sonar/conf/sonar.properties
数据库
Sonar支持多种数据库,正常情况下建议使用真实数据库,例如mysql、oralcel等。
为了快速体验sonar功能,这里选择使用内存数据库,不需要修改配置文件。
默认就是使用H2内存数据库,端口 9092
sonar.jdbc.url: jdbc:h2:tcp://localhost:9092/sonar
web服务
Sonar支持独立启动,也支持使用其它web容器启动。
默认端口为9000,启动后可以通过 http://hostip:9000/ 访问
#sonar.web.host: 0.0.0.0
#sonar.web.port: 9000
#sonar.web.context: /
启动
独立启动的方式如下
$sonar/bin/{os_arch}/sonar.sh start
# 其中os_arch主要就是操作系统+位数,在本例中就是linux-x86-64,即启动命令为:
$sonar/bin/linux-x86-64/sonar.sh start
ps:查看系统位数的方法
$unama -m
x86_64
$arch
x86_64
maven配置
在需要运行代码分析的机器上,修改{$M2_HOME}/conf/settings.xml,profiles 结点添加以下内容
其中的hostip需要替换成以上sonar部署服务器的ip
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:h2:tcp://hostip:9092/sonar</sonar.jdbc.url>
<sonar.jdbc.driverClassName>org.h2.Driver</sonar.jdbc.driverClassName>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.host.url>http://hostip:9000</sonar.host.url>
</properties>
</profile>
代码分析
由于maven的sonar插件在分析代码的时候占用内存较多,因此需要设置一下MAVEN_OPTS
$export MAVEN_OPTS="-Xms512m -Xmx2048m"
执行sonar分析
$mvn clean install sonar:sonar -Dmaven.test.failure.ignore=true
查看报表
访问 http://hostip:9000/ 即可访问本次分析的报表。
(其中hostip为sonar部署服务器ip)
默认用户
admin/admin
汉化
sonar通过插件的方式支持各种语言切换,
汉化插件页面可以下载。
插件有2种安装方式,
- 使用updatecenter自动更新,登录后进入settings - updatecenter菜单选择插件后安装
- 自行下载插件,放到sonar/extensions/plugins/目录,重启sonar后生效
update center里最新的中文包已经不再适配3.7.4版本,下载
1.6版本中文包后,放到sonar/extensions/plugins 目录下,重启sonar后刷新页面,即是中文版。
分享到:
相关推荐
2. **配置Sonar插件**: 在Maven配置文件中指定Sonar插件的具体配置项,比如分析的语言、项目名称等。 ```xml <project.build.sourceEncoding>UTF-8 <sonar.projectName>MyProject</sonar.projectName> <sonar...
java运行依赖jar包
### 代码质量监控:sonar+maven2+myeclipse #### 一、Sonar环境搭建 为了确保软件项目的质量,SonarQube提供了一种全面的解决方案来管理代码的质量和复杂度。以下步骤详细介绍了如何搭建Sonar环境: 1. **安装JDK...
2.5-快照(sonar.skip、sonar.java.libraries、sonar.java.binaries) 复杂的 maven 项目解析(例如,模块目录中的几个 pom 文件) Scala 支持(包括 src/main/scala 作为源和 src/test/scala 作为测试)
在本示例中,“sonar-maven-plugin”将被用来运行SonarQube分析并在项目构建过程中报告结果。 GitLab CI/CD则是一个自动化持续集成和持续部署平台,允许开发者在代码提交后自动运行测试、构建和部署任务。通过在...
Hudson+Sonar+Maven+SVN详细集成介绍
集成这些工具后,你可以创建一个Jenkins job,该job在代码提交时自动触发,先使用Maven构建项目,然后通过SonarScanner执行代码分析,并将结果上传到SonarQube。这样,每次代码更新都能及时得到质量检查报告,便于...
搭建一个持续集成的环境,并且能够检测代码的质量,使你的Java开发更加便捷与智能,大大地提高开发效率,你值得拥有
这将分析项目并将结果上传至Sonar服务器。 6. **安装中文包**: 登录Sonar管理界面,通过更新中心安装中文包。默认用户名和密码为`admin/admin`。 通过以上步骤,Maven和Sonar都已成功安装和配置,可以协同工作来...
sonar-maven-plugin-3.4.0.905.jar资源包,在导入项目出错时,可以将相关资源jar包下载下来,导入到本地仓库中,即可解决项目启动,资源包出错的问题。
### 基于Jenkins-Sonar-Maven-SVN-Tomcat的集成部署 #### 一、概述 本文档旨在详细介绍如何实现一个自动化部署流程,该流程涉及的关键组件包括Jenkins、SonarQube、Maven、Subversion (SVN) 和 Apache Tomcat。...
在Maven项目中,我们可以使用Jacoco插件来进行单元测试覆盖率的测量。下面是一个示例配置: ```xml <groupId>org.jacoco <artifactId>jacoco-maven-plugin <version>0.7.8 <goal>prepare-agent <goal>...
在项目中集成 Sonar 需要对 Maven 的配置文件 `pom.xml` 进行修改,添加 Sonar 的插件和相关配置,例如数据库连接信息、项目语言等。同时,需要在命令行中执行 `mvn sonar:sonar` 命令来触发Sonar分析。 1. 修改 ...
在实际使用中,开发人员可能首先会解压"sonar-packaging-maven-plugin-1.10-RC1.zip",然后在他们的Maven配置中添加该插件,以便在SonarQube项目构建过程中集成质量检查和打包功能。接着,他们可能会使用"amqp.zip...
1. Maven 项目:Sonar 可以与 Maven 集成,使用 mvn sonar:sonar 命令来分析项目。 2. 非 Maven 项目:Sonar 可以使用 pom.xml 文件来分析项目。 在使用 Sonar 分析项目时,需要按照以下步骤进行: 1. 为项目创建...
先决条件为了正确使用此插件,您的JAVA项目需要已经在Sonar中进行了配置,并使用org.sonarsource.scanner.maven:sonar-maven-plugin连接如何使用将以下插件添加到您的pom.xml中< plugin> < groupId>...
Sonar,Sonar+maven,Sonar+eclipse
6. 在Jenkins中创建Job,设置构建触发器(如Svn钩子),配置构建步骤(包括Maven构建、Sonar分析)和部署到Tomcat的步骤。 7. 运行Jenkins Job,观察构建和部署情况,根据Sonar的反馈进行代码优化。 通过以上步骤,...
绑定成功后,SonarLint可以实时分析Eclipse中项目代码,并在代码编辑器旁边显示问题提示。 对于IntelliJ IDEA的集成和使用,手册也提供了相应的指导: 1. 在IDEA中安装SonarLint插件,并进行基本配置。 2. 绑定...
标题“jacoco-sonarqube-maven覆盖率统计参考项目”涉及的主要知识点是使用JaCoCo插件在SonarQube平台上进行代码覆盖率统计,并解决在Maven项目中遇到的覆盖率显示为0的问题。这是一个针对Java开发者的实用案例,...