教你快速搭建sona服务及idea使用sona的方法

 更新时间:2021年06月24日 08:55:46   作者:前路无畏  
Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,本文给大家分享搭建sona服务及idea使用sona的方法,感兴趣的朋友一起看看吧

Sonar概述

Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。

在对其他工具的支持方面,Sonar 不仅提供了对 IDE 的支持,可以在 Eclipse 和 IntelliJ IDEA 这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar。

此外,Sonar 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。

一、 搭建sona服务

1.下载pg数据库:
docker pull postgres
2. 下载sonaqube,版本锁定在7.9.1-community
docker pull sonarqube:7.9.1-community
3. 启动pg数据库
docker run --name postgresqldb -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres
说明:
postgresqldb :数据库名字
sonar : 用户名
sonar : 密码
4. 启动sona
docker run --name sq --link postgresqldb -e SONARQUBE_JDBC_URL=jdbc:postgresql://postgresqldb:5432/sonar -p 9999:9000 -d sonarqube:7.9.1-community
说明:
sq : sona名字
postgresqldb :pg数据库的容器名字
jdbc:postgresql://postgresqldb:5432/sonar :pg数据库的连接;sonar 为数据库名字
9999:9000 : 9999为对外暴露的端口,因为9000我的其他服务已将捷足先登,被占用了,我这里使用9999; 9000: sona容器内部的提供服务的端口
sonarqube:7.9.1-community 镜像名字
使用portainer显示正常,后者使用其他方法,确认正常,

在这里插入图片描述

浏览器输入连接也可以确认正常:http://10.1.8.151:9999/
用户名:admin 密码: admin

在这里插入图片描述

二、idea配置

配置sona
在这里插入图片描述

选择Sona:这步如果出现问题也没事,不耽误sona扫描
在这里插入图片描述

clean项目
在这里插入图片描述

编译项目
在这里插入图片描述

三、 配置maven的setting.xml文件

<pluginGroups>
        <!-- pluginGroup
         | Specifies a further group identifier to use for plugin lookup.
        <pluginGroup>com.your.plugins</pluginGroup>
        -->
        <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
    </pluginGroups>
<profile>
            <id>sonar</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <!-- 配置 Sonar Host地址,默认:http://localhost:9000 -->
                <sonar.host.url>
                  http://10.1.8.151:9999/
                </sonar.host.url>
            </properties>
        </profile>

四、idea中 mvn sonar:sonar 执行命令

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

大约过去2分钟。执行完成。

五 访问sona查看问题

在这里插入图片描述

六、汉化

在这里插入图片描述

到此这篇关于教你快速搭建sona服务及idea使用sona的方法的文章就介绍到这了,更多相关idea使用sona内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 创建一个Java的不可变对象

    创建一个Java的不可变对象

    这篇文章主要介绍了创建一个Java的不可变对象,一个类的对象在通过构造方法创建后如果状态不会再被改变,那么它就是一个不可变(immutable)类。它的所有成员变量的赋值仅在构造方法中完成,不会提供任何 setter 方法供外部类去修改,需要的朋友可以参考下
    2021-11-11
  • Spring Boot基于Active MQ实现整合JMS

    Spring Boot基于Active MQ实现整合JMS

    这篇文章主要介绍了Spring Boot基于Active MQ实现整合JMS,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Java文件IO操作教程之DirectIO的意义

    Java文件IO操作教程之DirectIO的意义

    这篇文章主要给大家介绍了关于Java文件IO操作教程之DirectIO的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • Java的Jackson库中复杂对象集合的几种简单转换

    Java的Jackson库中复杂对象集合的几种简单转换

    本文主要介绍了Java的Jackson库中复杂对象集合的几种简单转换。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • Maven中resources标签的用法详解

    Maven中resources标签的用法详解

    本文主要介绍了Maven中resources标签的用法详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • SpringMVC结合Jcrop实现图片裁剪

    SpringMVC结合Jcrop实现图片裁剪

    这篇文章主要介绍了SpringMVC结合Jcrop实现图片裁剪的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • Mybatis Interceptor线程安全引发的bug问题

    Mybatis Interceptor线程安全引发的bug问题

    这篇文章主要介绍了Mybatis Interceptor线程安全引发的bug问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • 实践讲解SpringBoot自定义初始化Bean+HashMap优化策略模式

    实践讲解SpringBoot自定义初始化Bean+HashMap优化策略模式

    本篇讲解了SpringBoot自定义初始化Bean+HashMap优化策略模式,通过实践的方式更通俗易懂,对此不了解的同学跟着小编往下看吧
    2021-09-09
  • MyBatis查询返回Map示例代码

    MyBatis查询返回Map示例代码

    这篇文章主要给大家介绍了关于MyBatis查询返回Map的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • 阿里云主机上安装jdk 某库出现问题的解决方法

    阿里云主机上安装jdk 某库出现问题的解决方法

    今天安装jdk到阿里云服务上,首先看下阿里云是32位还是64位的,如果是32位下载32位的包,如果是64位的下载64位的包,下面与大家分享下安装过程中遇到问题的解决方法
    2013-06-06

最新评论