`
tinyhema
  • 浏览: 152153 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

使用sonar分析maven项目

    博客分类:
  • java
 
阅读更多
记录了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种安装方式,
    1. 使用updatecenter自动更新,登录后进入settings - updatecenter菜单选择插件后安装
    2. 自行下载插件,放到sonar/extensions/plugins/目录,重启sonar后生效

    update center里最新的中文包已经不再适配3.7.4版本,下载1.6版本中文包后,放到sonar/extensions/plugins 目录下,重启sonar后刷新页面,即是中文版。
    分享到:
    评论

    相关推荐

      sonar与maven的集成使用说明

      2. **配置Sonar插件**: 在Maven配置文件中指定Sonar插件的具体配置项,比如分析的语言、项目名称等。 ```xml &lt;project.build.sourceEncoding&gt;UTF-8 &lt;sonar.projectName&gt;MyProject&lt;/sonar.projectName&gt; &lt;sonar...

      sonar-maven-plugin-3.6.0.1398.jar

      java运行依赖jar包

      sonar+maven2+myeclipse代码质量监控

      ### 代码质量监控:sonar+maven2+myeclipse #### 一、Sonar环境搭建 为了确保软件项目的质量,SonarQube提供了一种全面的解决方案来管理代码的质量和复杂度。以下步骤详细介绍了如何搭建Sonar环境: 1. **安装JDK...

      sonar-packaging-maven-plugin-1.10-RC1.zip

      【标题】: "SonarQube打包Maven插件1.10 RC1版" ...通过深入这些知识点,开发者不仅可以掌握SonarQube打包Maven插件的使用,还能熟练地将Scalate集成到Lift项目中,从而提升代码质量和Web应用的用户体验。

      sonar-maven-plugin:SonarQube Maven 插件 + 补丁

      2.5-快照(sonar.skip、sonar.java.libraries、sonar.java.binaries) 复杂的 maven 项目解析(例如,模块目录中的几个 pom 文件) Scala 支持(包括 src/main/scala 作为源和 src/test/scala 作为测试)

      Hudson+Sonar+Maven+SVN详细集成介绍

      Hudson+Sonar+Maven+SVN详细集成介绍

      Jenkins+sonar+maven+svn+tomcat集成

      搭建一个持续集成的环境,并且能够检测代码的质量,使你的Java开发更加便捷与智能,大大地提高开发效率,你值得拥有

      Maven与sonar的安装及配置文档

      这将分析项目并将结果上传至Sonar服务器。 6. **安装中文包**: 登录Sonar管理界面,通过更新中心安装中文包。默认用户名和密码为`admin/admin`。 通过以上步骤,Maven和Sonar都已成功安装和配置,可以协同工作来...

      sonar-maven-plugin-3.4.0.905.jar

      sonar-maven-plugin-3.4.0.905.jar资源包,在导入项目出错时,可以将相关资源jar包下载下来,导入到本地仓库中,即可解决项目启动,资源包出错的问题。

      基于Jenkins-sonar-maven-svn-tomcat的集成部署

      ### 基于Jenkins-Sonar-Maven-SVN-Tomcat的集成部署 #### 一、概述 本文档旨在详细介绍如何实现一个自动化部署流程,该流程涉及的关键组件包括Jenkins、SonarQube、Maven、Subversion (SVN) 和 Apache Tomcat。...

      sonar-maven-ci-example:Maven项目中SonarQube和Gitlab CI之间集成的示例

      在本示例中,“sonar-maven-plugin”将被用来运行SonarQube分析并在项目构建过程中报告结果。 GitLab CI/CD则是一个自动化持续集成和持续部署平台,允许开发者在代码提交后自动运行测试、构建和部署任务。通过在...

      1.2.maven多模块项目配置1

      在Maven项目中,我们可以使用Jacoco插件来进行单元测试覆盖率的测量。下面是一个示例配置: ```xml &lt;groupId&gt;org.jacoco &lt;artifactId&gt;jacoco-maven-plugin &lt;version&gt;0.7.8 &lt;goal&gt;prepare-agent &lt;goal&gt;...

      maven+jenkins+sonar环境搭建

      在项目中集成 Sonar 需要对 Maven 的配置文件 `pom.xml` 进行修改,添加 Sonar 的插件和相关配置,例如数据库连接信息、项目语言等。同时,需要在命令行中执行 `mvn sonar:sonar` 命令来触发Sonar分析。 1. 修改 ...

      codeql2sonar-maven-plugin:Maven插件解析由CodeQL创建的用于SonarQube issueReporter的SARIF文件

      先决条件为了正确使用此插件,您的JAVA项目需要已经在Sonar中进行了配置,并使用org.sonarsource.scanner.maven:sonar-maven-plugin连接如何使用将以下插件添加到您的pom.xml中&lt; plugin&gt; &lt; groupId&gt;...

      Sonar开源的Java源代码管理平台UT覆盖率.pdf

      1. Maven 项目:Sonar 可以与 Maven 集成,使用 mvn sonar:sonar 命令来分析项目。 2. 非 Maven 项目:Sonar 可以使用 pom.xml 文件来分析项目。 在使用 Sonar 分析项目时,需要按照以下步骤进行: 1. 为项目创建...

      使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境

      6. 在Jenkins中创建Job,设置构建触发器(如Svn钩子),配置构建步骤(包括Maven构建、Sonar分析)和部署到Tomcat的步骤。 7. 运行Jenkins Job,观察构建和部署情况,根据Sonar的反馈进行代码优化。 通过以上步骤,...

      Sonarlint中文使用手册

      绑定成功后,SonarLint可以实时分析Eclipse中项目代码,并在代码编辑器旁边显示问题提示。 对于IntelliJ IDEA的集成和使用,手册也提供了相应的指导: 1. 在IDEA中安装SonarLint插件,并进行基本配置。 2. 绑定...

    Global site tag (gtag.js) - Google Analytics