sonarlint在idea&eclipse中安装与使用
介绍
代码质量管理的开源平台,用于管理源代码的质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测。集成了CheckStyle,PMD,Findbugs等工具校验规则,具有重复代码发现,代码测试覆盖率,代码注释率,及所有的检测率变化追踪的功能特性。
特点
SonarQube:开源的代码质量管控平台,我们使用的http://localhost:9000即为SonarQube。
SonarLint:一个扩展插件,可以安装在idea与eclipse等开发工具中
Eclipse中的使用
1、 安装
help -> eclipse marketplace...,搜索sonarlint, Install。

2、 使用
打开java文件,soanrlint会自动进行检测,对于不规范或有问题的代码会在下方划蓝色波浪线,如图:

鼠标放在蓝色部分会有弹框显示错误信息或建议修改信息
点击“open description of rule”可以查看具体的错误描述,错误示例及修改示例。

在项目或单个java文件上右键 -> sonarlint -> Analyze 进行手动操作分析。这样SonarLint Report面板中查看所有的异常信息

3、Server
连接SonarQube的主要目的是同步分析规则、质量规则与自定义设置。操作如下:
从Window -> show view 中找到SonarLint Bindings打开;

在该面板空白处 右键创建 server连接,选择SonarQube



使用UserName+Password或者token登陆

没有token可以点击右侧按钮创建,或者寻找管理员创建

配置名称

完成服务配置

绑定工程,点击add



输入sonarQube中创建的工程的名称

完成

4、 结果同步SonarQube显示
在maven的settings.xml中配置如下:

配置完成后,使用soanr:sonar命令运行项目,此部分要求JDK为1.8。clean install sonar:sonar

可以打开http://localhost:9000/dashboard?id=com.xxx查看对应的错误信息,也可以在SonarQube点击Issues进行查看


IDEA中使用
1、 安装
File -> settings -> plugins 搜索sonarLint,Install。

2、 使用
在左下角点击隐藏面板,可以看到sonarLint,打开
打开java文件,soanrlint会自动进行检测,对于不规范或有问题的代码会添加暗金色的背景色,鼠标放上去会有如图提示:


也可以通过点击上图的绿色倒三角手动执行分析。
3、 Server
连接SonarQube的主要目的是同步分析规则、质量规则与自定义设置。操作如下:
从File -> settings -> OtherSettings中找到“SonarLint General Settings”打开;

点击加号,输入一个name,如localhost;选择SonarQube,Url为http://localhost9000;
选择Login/Password或者token,输入账号与密码或者token;

finish

勾选“Enable binding to remote SonarQube Server”,选择添加的server,搜索到你需要绑定的项目,然后选择确认。

4、结果同步SonarQube显示
同Eclipse部分,此部分要求JDK为1.8。


sonarlint在idea&eclipse中安装与使用的更多相关文章
- [sonarqube的使用] sonarlint在idea&eclipse中安装与使用
介绍 代码质量管理的开源平台,用于管理源代码的质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管 ...
- ubuntu eclipse 中安装 python + PyDev
参照网络和个人总结 系统配置:ubuntu12.04 jdk:1.6 eclipse:3.4 首先你的系统必须安装好pyton .也ubuntu系统自带的 刚开始以为是jdk安装 ...
- 总结eclipse中安装maven插件
当自己越来越多的接触到开源项目时,发现大多数的开源项目都是用maven来够建的.并且在开发应用时,也越来越意识到maven的确会解决很多问题,如果你要了解maven,可以参考:Maven入门指南(一) ...
- 在Eclipse中安装SVN客户端插件
在Eclipse中安装SVN客户端插件 1.1 Eclipse插件应用市场 在Eclipse中访问Eclipse Marketplace Client可以搜索Subversion,下载插件,按提示安 ...
- 如何在eclipse中安装Jess
如何在eclipse中安装Jess 浏览:49 | 更新:2014-05-12 16:39 这个文章帮了不少忙,感谢! 但经我实践,还要把插件那些文件向/dropins/sdk下也放一份,才能成功. ...
- 在Eclipse中安装和使用TFS插件
在Eclipse中安装插件的方法其实都一样,安装TFS的步骤如下: 下载TFS插件.你可以到微软的下载中心,下载TFS插件TFSEclipsePlugin-UpdateSiteArchive-10.0 ...
- SVN工具的使用 和在Eclipse中安装GPD插件:(多步审批流,因此选择使用工作流(JBPM)来实现)
前言 重点解说SVN工具的还原版本号. 1.提交svn之前.要先更新文件.假设更新之后有版本号冲突的话.就线下解决掉冲突,在把该文件标记为已经解决冲突. 正文 使用SVN还原历史版本号 water ...
- 在Eclipse中安装spket插件
spket是一个开发JavaScript和Ext等的开发工具,它可以 是独立的IDE,也可以作为 Eclipse的插件使用,下面介绍如何在Eclipse中安装spket插件, 1.首先上 官网 htt ...
- eclipse中安装genymotion
在eclipse中安装genymotion.安装genymotion需要先安装virtualbox.选择Help选项中的install new software 然后点击进去点击ADD,在locati ...
随机推荐
- Delphi中Menu设置Images属性后快捷按键下划线被隐藏解决方法
现象:MainMenu设置Images属性后,看不到快捷按键的下划线,如:新建(&N) 分析:VCL中Menus.pas单元的代码,看到如下语句procedure TMenuItem.Adva ...
- Delphi各种从文件里读取内容的方法
Hi I am having a problem running a function to read a text file the problem seems to be that my anti ...
- Codlility---MinPerimeterRectangle
Task description An integer N is given, representing the area of some rectangle. The area of a recta ...
- 浅谈Java中的命名规范
现代软件架构的复杂性需要协同开发完成,如何高效地协同呢? 答案是:制定一整套统一的规范. 无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没 ...
- 我整理的一份来自于线上的Nginx配置(Nginx.conf),希望对学习Nginx的有帮助
我整理了一份Nginx的配置文件说明,是真正经历过正式线上考验过.如果有优化的地方,也请朋友们指点一二,整理出一份比较全而实用的配置. 主要包含配置:负载均衡配置,页面重定向,转发,HTTPS和HTT ...
- Tomcat常见问题[内存溢出,虚拟目录配置等](一)
一.Tomcat内存溢出的解决方法 内存溢出一般有如下三种常见的原因: OutOfMemoryError: Java heap space OutOfMemoryError: PermGen spac ...
- HBase 学习之路(四)—— HBase集群环境配置
一.集群规划 这里搭建一个3节点的HBase集群,其中三台主机上均为Regin Server.同时为了保证高可用,除了在hadoop001上部署主Master服务外,还在hadoop002上部署备用的 ...
- Spring Boot2(五):使用Spring Boot结合Thymeleaf模板引擎使用总结
一.Thymeleaf概述 一般来说,常用的模板引擎有JSP.Velocity.Freemarker.Thymeleaf . SpringBoot推荐的 Thymeleaf – 语法更简单,功能更强大 ...
- 【jar包管理】Maven BOM
BOM Alibaba Spring Boot Dependencies is a Maven BOM used to manage the versions of most used Alibaba ...
- Demo小细节
(1) 程序如下: public class Example { static int i = 1, j = 2; static { display(i); i = i + j; } static v ...