我正在尝试将MSBuild SonarQube扫描仪用于我的C#项目。 RootFolder有一个.sln文件,并且每个项目(.csproj)都在根文件夹内的单独文件夹中创建。我在RootFolder中有项目属性文件。
SonarQube服务器(LTS版本6.7.5)正常运行。
我当前的环境详细信息:
Visual Studio 2010 .Net Framework 4.5.2 MSBuild版本 4 适用于MSBuild的sonarScanner 4.3.1.1372 Sonar Csharp插件版本: 7.3.2.6129
当我尝试在项目根目录的“开始”命令下运行时,看到此错误:
M:\myProjectCsharp>MSBuild.SonarQube.Runner.exe begin /k:”myProjectCsharp”/n: “myProjectCsharp”/v:”1.0”
Unhandled Exception: System.MissingMethodException: Method not found: '!!0[] System.Array.Empty()'.
at SonarScanner.MSBuild.Program.Execute(String[] args, Boolean showDeprecatedWarning)
at MSBuild.SonarQube.Runner.Program.Main(String[] args)
我想这与.Net Framework或MSBuild版本的兼容性有关吗?
此外,Visual Studio在这里的作用是,我已经在RootFolder'myProjectCsharp'下的相应项目目录中获得了.sln,.csproject及其对应的.cs文件。
(如果我只运行sonar-scanner-msbuild-4.3.1.1372-net46 \ sonar-scanner-3.2.0.1227 \ bin \ sonar-scanner,我看不到任何错误,但这似乎没有更新任何内容在仪表板上(仅显示0个Bug,漏洞和代码气味))
有任何线索吗?
谢谢。