sonarworks安装教程(Sonar:VSCode配置SonarLint/SonarLint连接SonarQube)
需求描述
公司为项目代码配置了Sonar检测 ,希望在VSCode中开发项目时能够同步远程检测 。
准备工作
首先要搭建java(版本11+)环境 ,建议直接从官网下载:JDK 11.0.18;没有Oracle账号非常推荐创建一个 ,流程很简单 ,填写一些信息即可~官网的资源和文档是获取最方便 、问题最少的 ,比网络上大多数信息靠谱太多太多!!!(来自本·踩坑无数·杂鱼的忠告)
java环境变量配置可参考:java环境变量 的配置与详解(全网最详细教程)
SonarLint
点击VSCode左侧工具栏的“扩展 ” ,搜索“SonarLint ”并安装如图所示的插件:
从更改日志可以发现 ,SonarLint从2.0.0开始不再支持连接低于7.9的SonarQube服务 ,因此下文将分别介绍连接高版本和低版本SonarQube服务的操作 。
SonarQube版本7.9+
①插件安装完成后 ,点击VSCode顶部工具栏的“查看 ”→“打开视图… ” ,并点击弹窗中的“SonarLint ”:
②可以看到VSCode左下方出现了“SONARLINT CONNECTED MODE ”面板:
③点击“Add SonarQube Connection ” ,并在出现的tab中输入SonarQube的Sever URL:“http://IP:9000/ ”
④点击“Generate Token ” ,在跳转的SonarQube页面中点击“允许连接 ”,生成的token将自动发送给VSCode并填入User Token栏:
⑤点击“Save Connection ”保存连接 ,“SONARLINT CONNECTED MODE ”面板下会出现建立的连接:
⑥点击远程连接右侧的“Add Project Binding” ,选择对应的远程项目进行绑定即可:
SonarQube版本<7.9
①插件安装完成后,点击SonarLint插件的配置图标 ,选择“安装另一个版本 ” ,并在弹窗中选择1.19.0(2.0.0之前最新的几个版本都行):
②使用admin账号登录SonarQube控制台(http://XXX/sessions/new) ,点击右上角头像->“My Account ”->“Security” ,在页面输入token名称并点击“Generate ” ,即可创建token(创建完成拷贝并保存好你的token字符串):
③1.19.0安装完成后 ,点击左下角齿轮按钮->“设置 ”打开设置页 ,点击右上角“打开设置(json) ”打开用户的settings.json:
④增加SonarQube连接配置项:
"sonarlint.ls.javaHome": "E:\\你的JAVA_HOME路径", "sonarlint.connectedMode.connections.sonarqube": [ { "serverUrl": "http://IP:9000", "token": "你的token", "connectionId": "conn1" // 如果有多个连接 ,此id用于唯一标识连接 } ],⑤左侧“SONARLINT RULES ”面板中可以查看同步的检测规则 ,当前打开文件中检测出的问题会出现在下方的问题面板中:
其他
绑定7.9以下的SonarQube服务后 ,还可以通过配置绑定远程项目 ,但配置后依然只能检测当前打开的文件 ,并非期望中显示项目下所有问题的效果;感觉配不配置大差不差,就不记录了 ,感兴趣的小伙伴可以参考SonarLint-Connected Mode配置试试~这篇博客的操作皆是参考这篇官方Wiki 。
按“Ctrl + Shift + P ”快捷键 ,在命令搜索框输入“sonar ”,点击“SonarLint: Update all project bindings to SonarQube/SonarCloud ” ,可以刷新本地缓存 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!