| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> sonar 配置sonarqube分析unity中的C# 代码 -> 正文阅读 |
|
[游戏开发]sonar 配置sonarqube分析unity中的C# 代码 |
参考文档:使用SonarQube对Unity项目进行代码分析的问题记录 - zerozabuu - 博客园 一文搞定 SonarQube 接入 C#(.NET) 代码质量分析 - 狂师 - 博客园 需要分析的代码是unity下的C# 代码,配置流程主要参考上面两个文档,但还是遇到不少坑。 1、官网下载解压最新版的SonarQube(我用的是8.9.1)。2、下载安装jdk并配置环境变量,这里我原来用的是jdk16,但是报错,换成了jdk11。3、数据库配置,我也用的postgresql。4、启动sonar服务。双击startsonar 运行成功如图 此时打开?http://localhost:9000/?,可以进入sonarqube网站,默认账号密码都是admin, 登录后会提示修改一下密码,这个密码要记住,后面会用到。 ? ? 5、下载?sonar-scanner-msbuild要分析C# 代码,需要下载?sonar-scanner-msbuild并配置环境变量。 我本来也下载的sonar-scanner-msbuild-4.3.1.1372-net466这个版本,但是后续出错了,提交报告的时候,提示只支持Msbuild14和15,又重新下载了最新的版本sonar-scanner-msbuild,需要配置到path路径。 ? 6、MSBuild安装和配置。需要用到Msbuild,这个是Visual studio带的工具,有下载了下VS2019,找到Msbuild的路径 C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\bin ,添加到环境变量path中。 7、运行预处理编译和提交报告命令。切换到项目根目录,运行cmd。 1)用命令SonarScanner.MSBuild.exe begin /k:"xxxxxx项目名" /n:"项目名" /v:"1.0"? ? 进行预处理。 执行后会生成一个.sonarqube文件 ? ? 2)用命令MSBuild.exe xxxx.sln /t:Rebuild 对解决方案进行编译。 ? ?提示0个错误,这样是编译通过。 执行后会生成一个obj文件 ? 3)SonarScanner.MSBuild.exe end 命令,将分析结果上传到sonarqube。 成功结果如图。 在sonarqube可以看到上传的项目报告。? ?遇到的坑:1)执行?SonarScanner.MSBuild.exe提示远程服务器返回错误:(401)未经授权。 ?解决方案:找同事复制了一份sonarQube.analysis文件,可能我原来的文件改错了。 登录sonarqube的账号密码要配置好。 2、 用VS2019带的MSbuild编译通过,但是生成报告的时候报错。 SonarScanner.MSBuild.exe?end ?原因是VS2019自带的MSBuild为16版本,而用的sonarscanner for msbuild 4.3.1只支持msbuild14或者15。 所以换了msbuild14编译,又提示编译不通过。 ?报错信息为:CSC?:?error?CS1617:?Invalid?option?'latest'?for?/langversion;?must?be?ISO-1,?ISO-2,?Default?or?an?integer?in?range?1 to?6.? 原因是代码用了新的语言,而MSbuild14不支持,所以还是要用msbuild16。 解决方案:重新下载最新版本的sonarscanner for msbuild(用的是5.3.1) ?又操作预处理,编译,上传报告成功。 3、关闭sonar服务,不仅需要关闭sonar的命令行窗口,还要在任务管理器,结束掉所有的java任务。 如果不关闭java服务,再启动sonar,会提示被占用。 ? ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/28 4:50:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |