.net core SonarQube与.NET核心1.1

.net core SonarQube与.NET核心1.1,.net-core,msbuild,sonarqube,.net Core,Msbuild,Sonarqube,在我的团队使用SonarQube完全迁移到.NET Core 1.0之后,我的想法有点不合时宜,但后来我读到,在Core 1.1中,从project.json迁移到.csproj时,可能会使用MSBUILD来构建项目并对代码运行SonarQube分析 有人能做到这一点吗?在我们将一个解决方案升级到Core1.1之后,我一直试图让SonarQube分析这段代码 如果同时尝试使用msbuild/t:rebuild和 dotnet msbuild 在Sonar分析期间构建项目,但除了SonarQube

在我的团队使用SonarQube完全迁移到.NET Core 1.0之后,我的想法有点不合时宜,但后来我读到,在Core 1.1中,从project.json迁移到.csproj时,可能会使用MSBUILD来构建项目并对代码运行SonarQube分析

有人能做到这一点吗?在我们将一个解决方案升级到Core1.1之后,我一直试图让SonarQube分析这段代码

如果同时尝试使用
msbuild/t:rebuild
dotnet msbuild

在Sonar分析期间构建项目,但除了SonarQube之外,任何一方都没有生成任何其他内容,因此响应标准“确保构建成功,并且所有SonarQube命令都从同一文件夹运行”错误

尽管
msbuild/t:rebuild
确实返回“构建成功”。

这里有两个方面:

  • 在微软方面:我相信.csproj现在是事实上的格式(见下图)。旧格式(.xproj,project.json)应使用VS2017工具集迁移到csproj
  • 在SonarQube方面:.Net核心项目从
    • 这里有两个方面:

      • 在微软方面:我相信.csproj现在是事实上的格式(见下图)。旧格式(.xproj,project.json)应使用VS2017工具集迁移到csproj
      • 在SonarQube方面:.Net核心项目从

      我一直在寻找相同的答案,但与以前的版本相同

      我有三个步骤来做同样的事情。 安装.net核心框架时会出现dotnet msbuild

      主要区别在于我们必须使用“dotnet MsBuild”而不是“MsBuild”

      SonarQube.Scanner.MSBuild.exe begin/k:“org.SonarQube:SonarQube Scanner-MSBuild”/n:/v:”
      *dotnet msbuild*“\ConsoleAppForSonar.sln”
      SonarQube.Scanner.MSBuild.exe结束
      
      我一直在寻找相同的答案,但与以前的版本相同

      我有三个步骤来做同样的事情。 安装.net核心框架时会出现dotnet msbuild

      主要区别在于我们必须使用“dotnet MsBuild”而不是“MsBuild”

      SonarQube.Scanner.MSBuild.exe begin/k:“org.SonarQube:SonarQube Scanner-MSBuild”/n:/v:”
      *dotnet msbuild*“\ConsoleAppForSonar.sln”
      SonarQube.Scanner.MSBuild.exe结束
      
      太棒了!非常感谢。我正在查找有关msbuild的新扫描程序是否支持.net core的信息,但不知何故,我没有找到您链接的站点。谢谢:)@XtianGIS:Microsoft本身似乎不赞成xproj格式,请参阅我答案中的问答链接。@NicolasB.-SonarSourceTeam您是对的,但他们在2.0版中遭到了反对,我目前有netcore 1.1版的项目,它们是.xproj格式的,以防您的解决方案包含网络标准项目,您至少需要SonarQube.Scanner.MSBuild.exe的v4.x版本。太棒了!非常感谢。我正在查找有关msbuild的新扫描程序是否支持.net core的信息,但不知何故,我没有找到您链接的站点。谢谢:)@XtianGIS:Microsoft本身似乎不赞成xproj格式,请参阅我答案中的问答链接。@NicolasB.-SonarSourceTeam您是对的,但他们在2.0版中遭到了反对,我目前有netcore 1.1版的项目,它们是.xproj格式的,以防您的解决方案包含网络标准项目,您至少需要SonarQube.Scanner.MSBuild.exe的v4.x版本。
      SonarQube.Scanner.MSBuild.exe begin /k:"org.sonarqube:sonarqube-scanner-msbuild" /n:"<yourprojectname>" /v:"<version>"
      
      *dotnet msbuild* "<Path to your .net core project>\ConsoleAppForSonar.sln"
      
      SonarQube.Scanner.MSBuild.exe end