我一直在尝试对几个.Net Core 1.1项目进行代码分析,但未能获得任何结果。
使用VS2015和project.json格式时,我成功发送了命令:
../声纳/工具/声纳扫描仪-2.8 / bin中/声纳扫描仪
并且声纳服务器显示项目和测试项目中的每个文件,但实际上没有进行任何分析:
将项目迁移到VS2017和csproj格式后,我甚至无法进行扫描。
在主项目文件夹中运行:
SonarQube.Scanner.MSBuild.exe begin /k:"Car.Enquiry-Presenter" /n:"Car.Enquiry-Presenter" / v:" 1.0" (这里没有问题)
msbuild Car.EnquiryPresenter.csproj
抛出错误:"错误MSB4066:属性"版本"元素中的元素无法识别。"
我在这里可以看到dotnet cli尚不支持 https://jira.sonarsource.com/browse/SONARMSBRU-310
但这篇文章表明它有可能: https://www.sonarsource.com/resources/product-news/news.html#2017-04-13-sonarqube-scanner-for-msbuild-2-3-released 支持.NET核心项目:SONARMSBRU-167'
但是我一直无法让它发挥作用。
有人可以帮忙吗?
答案 0 :(得分:1)
答案是肯定的(很好,我可以回答我自己的问题!)。
我刚刚使用v15的MSBuild工作了,但是我需要完全qlaul化exe的路径,否则它继续使用v14:
我还需要添加一个&#39; ProjectGuid&#39;节点到我的包含guid的csproj文件(我刚用https://www.guidgen.com/生成了<)>
注意:覆盖您在csproj文件中使用的工具集不会强制它使用v15。即:.... 因此,完全合格的道路。
您需要确保使用&#34; dotnet restore&#34;更新nuget软件包。在调用msbuild.exe之前。