【问题标题】:Automatic Nuget package restore in Visual Studio Online failsVisual Studio Online 中的自动 Nuget 包还原失败
【发布时间】:2015-04-24 17:26:50
【问题描述】:

我已经通过从 packages 文件夹中删除所有包、打开 Visual Studio 然后构建我的项目来验证它在本地工作 - 首先下载所有包然后构建。

我没有 .nuget 文件夹,并且在 Visual Studio 选项中我允许 Nuget 下载丢失的包。

在使用 TFS 构建时,我会遇到很多在本地构建时没有遇到的错误。我认为这与

有关

想法?

【问题讨论】:

    标签: azure-devops nuget-package-restore


    【解决方案1】:

    我在使用 Visual Studio Online 构建新项目时遇到了同样的问题,找到了这个解决方案

    1. 在 VS 中启用 Nuget 包还原(在解决方案资源管理器中单击解决方案)
    2. 从本地工作区 Visual Studio Online版本控制中删除解决方案/Packages文件夹。 (Thanks Robert)
    3. 确认本地构建工作
    4. 签入更改:3 个 Nuget 文件和修改的 .sln 和 .csproj
    5. 触发构建

    NuGet 应该在您构建时恢复本地包,并且在 VSO 构建后也会恢复。版本控制将没有包文件夹,但所需的包最终会在发布服务器上。我在每次构建时触发发布管理器,并使用 DSC 进行部署。

    NuGet 文档(12)没有解释它是如何工作的,我不得不“切换”一次,然后才能让构建工作。我已向 support@nuget.org 发送电子邮件,要求提供更详细和更清晰的文档。

    【讨论】:

    • 这个文档解释了一点,但似乎没有详细说明它是如何工作的,这是一个开始docs.nuget.org/consume/package-restore
    • 这是旧方法,在 nuget 网站和博客中,他们告诉你不要使用它。
    • 没错,包恢复链接也这么说。很难找到引用的部分(至少通过扫描文档)是在 TFS/VS 构建之前从源代码管理中删除包文件夹的步骤。
    【解决方案2】:

    您不必将包签入源代码管理。但是你需要帮助 MSBuild 恢复它。

    查看此链接:http://docs.nuget.org/docs/reference/package-restore-with-team-build

    诀窍是您必须创建并引用您的解决方案的 MSBuild .proj 文件。

    需要 Nuget 2.7

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多