【问题标题】:Azure DevOps Build missing assembly referenceAzure DevOps Build 缺少程序集参考
【发布时间】:2019-10-05 00:27:29
【问题描述】:

我在 Azure DevOps 上有一个构建过程,我已经成功构建了一段时间。

最近我的一位开发人员添加了一个包含 MVC 库的页面

using System.Web.Mvc

但是,当我作为 CI/CD 流程的一部分通过 Azure DevOps 构建代理构建它时,构建一直失败。

ClassName.cs(5,18):错误 CS0234:命名空间“System.Web”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)

如果我在自己的笔记本电脑上使用 Visual Studio 2017 手动编译,或者如果我在运行 Azure DevOps 构建代理的构建机器上使用 Visual Studio 2017,它就会编译。

我尝试解决的步骤:

  • 确保在我的项目的 NuGet 中,我拥有最新的 Microsoft.Aspnet.MVC 版本。
  • 我已尝试在 build 上重新安装 Microsoft.Aspnet.MVC
    机器通过 NuGet
  • 我验证了我的项目的默认包
    管理格式为:Packages.config
  • 我确认我的 packages.config 有
  • 我尝试重新安装所有 通过运行 Update-Package 在我的构建机器上安装包 --重新安装命令。
  • 我确认在构建代理机器上我有 Microsoft.AspNet.Mvc 文件夹及其所有 dll 在 repositoryPath -
    $(Solutiondir)/packages 和 globalPackagesFolder -
    $(UserProfile).nuget\packages

我不知道为什么它在 Visual Studio 上手动编译,但是当我通过 x64 位上的 MS Build 使用构建代理进行编译时出现错误。

【问题讨论】:

  • 您的构建是否有 NuGet 还原步骤?
  • 是的,我这样做了,就在我 *.sln 的构建步骤之前
  • 嗨,这个问题有什么更新吗?如果 Elphas 的回复有帮助,请考虑将其标记为答案。同样的问题仍然存在,请随时告诉我们:)

标签: c# visual-studio msbuild azure-devops


【解决方案1】:

我试图通过比较两个新的 ASP.NET Web 应用程序 (.NET Framework) 项目来重现您的错误,一个是使用空模板创建的,另一个是使用 MVC 模板创建的。 MVC 项目带有 System.Web.Mvc 引用,而空的则没有,因此我在手动将引用添加到空项目时提出了额外的故障排除步骤。

  • 确保构建失败的项目文件包含对包含路径的 Microsoft.AspNet.Mvc 包的引用(使用您的最新版本)
    <Reference Include="System.Web.Mvc, Version=5.2.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <Private>True</Private>
      <HintPath>..\packages\Microsoft.AspNet.Mvc.5.2.4\lib\net45\System.Web.Mvc.dll</HintPath>
    </Reference>

您可以从新创建的 MVC 模板中复制它和它。隐式引用 &lt;Reference Include="System.Web.Mvc" /&gt; 仅在生成构建工件之前有效,这可能是构建成功开发和构建管道失败的一个很好的理由。

  • 清理解决方案,关闭 Visual Studio 并删除所有 binobj 文件夹,以确保您的构建没有成功,因为之前的那些并且 Visual Studio 不会重新生成它们。

    李>
  • 使用开发人员命令提示符调用项目文件夹中的msbuild.exe,这将是一个比使用 Visual Studio 构建更类似于构建管道的环境

【讨论】:

    猜你喜欢
    • 2018-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-05
    • 2014-02-16
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    相关资源
    最近更新 更多