【问题标题】:Using Sonar MSBuild Runner with /p:IsPackaging=True将 Sonar MSBuild Runner 与 /p:IsPackaging=True 一起使用
【发布时间】:2015-11-30 10:38:12
【问题描述】:

我有一个 Visual Studio Team Services 构建定义,其中包含一个由 Sonar Begin Analysis 和 End Analysis 任务包围的 Visual Studio 构建任务。 Visual Studio Build 使用 /p:IsPackaging=True 属性打包 SharePoint 提供程序托管的加载项。如果设置了此属性,我会从 Sonar Build Runner 收到以下错误:

2015-11-27T13:23:05.9534586Z WARNING: Duplicate project GUID: "31ef7995-fdbc-4307-9024-a3d640fdf987". 
Check that the project is only being built for a single platform/configuration and that that 
the project guid is unique. The project will not be analyzed by SonarQube. 

当然,我可以先构建没有 /p:IsPackaging=True 的解决方案,然后对此进行分析,然后在第二步进行打包,但这似乎浪费资源,必须构建两次解决方案。

知道如何打包 SharePoint 提供程序托管的加载项,并使用 Sonar 进行代码分析的相同任务吗?

使用的声纳版本是 5.1.2。而VSTS任务使用的MSBuild.SonarQube.Runner版本为1.0.1。

【问题讨论】:

    标签: sonarqube sonar-runner azure-pipelines sharepoint-apps sonarqube-msbuild-runner


    【解决方案1】:

    抱歉这么久才回复!

    我看过这个,似乎 SharePoint msbuild 目标两次调用“构建”目标 - 一次是正常构建的一部分,一次是打包过程的一部分。为了让 SonarQube 分析跟踪所有构建工件,我们注入了一些依赖于构建任务的逻辑,现在这个逻辑被调用了两次,你得到了“重复项目 GUID”的问题。

    这是我在一个简单的 SharePoint 项目中尝试的解决方法 - 将实际构建和打包作为单独的步骤。所以你的构建定义将是:

    • SonarQube 开始
    • MSBuild(不带 /p:IsPackaging=true)
    • SonarQube 结束
    • MSBuild your_SP_project.csproj /t:Package

    请注意,对 msbuild 的第二次调用需要在您的 sharepoint 项目上完成 - 对解决方案调用 /t:Package 将不起作用,因为尚未导入 SharePoint 目标。

    如果可行,请告诉我!

    【讨论】:

    • 谢谢,这就是我目前或多或少正在做的事情。这种方法有一点。除了 SharePoint Web MVC 之外,我可能在同一解决方案中还有其他 MVC 项目。您知道构建此文件的最佳方法是什么(应生成 SharePoint 加载项文件、SharePoint Web 部署和其他 Web 部署)。目前我正在使用/p:IsPackaging /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:PackageLocation="MyPath" 调用解决方案。我应该将 MVC 项目打包到 Sonar 任务中,然后在第二步中调用 SP 包目标吗?
    • 花费数小时试图解决此问题。似乎任何包装都可以做到这一点(SharePoint、WebPublish ...)。甚至尝试实施此解决方案stackoverflow.com/questions/33788988/… 双构建步骤不会对构建过程造成很大的性能影响,因为大多数程序集已经构建(至少在第一轮构建中)。非常感谢!!
    猜你喜欢
    • 2016-03-27
    • 2015-10-27
    • 2016-12-12
    • 2015-11-15
    • 2016-10-24
    • 1970-01-01
    • 2022-01-13
    • 2013-07-10
    • 2015-09-11
    相关资源
    最近更新 更多