gpt4 book ai didi

tfsbuild - TFS 2013 构建 Controller 不尊重 NuGet 包恢复

转载 作者:行者123 更新时间:2023-12-02 21:32:51 26 4
gpt4 key购买 nike

我们将 VSO 与本地构建 Controller (TFS 2013) 结合使用。我已在 Visual Studio 的“选项”菜单中启用 NuGet 包还原(使用 .nuget 文件夹从旧的、已弃用的方式迁移)。

在 VS 内部,恢复包工作得很好,但是构建 Controller 不会恢复 NuGet 包。构建 Controller 在服务帐户下运行,如果我作为服务帐户启动 VS(在构建服务器上)并构建我的代码,它会恢复包。如何让构建 Controller 恢复丢失的包?

在 TFS 的 BuildProcessTemplate 文件夹中,我没有TfvcTemplate.12.xaml,我只有 DefaultTemplate.11.1.xaml由于我从未编辑过 xaml 文件,因此我看到有一个用于 NuGetRestore

的工具箱项目

我不确定如何继续,我有点想知道为什么我没有 TfvcTemplate.12.xaml 模板,但既然我没有,我该怎么办让我的构建服务器/ Controller 恢复 NuGet 包?

我已经编辑了服务帐户的 NuGet.config 文件(位于 AppData 文件夹中)以及位于解决方案根目录的 .nuget 文件夹中的 NuGet.config 文件,但是我的构建总是失败由于缺少依赖项(NuGet 包)。

有什么办法可以解决这个问题吗?另外,如何获取 TfvcTemplate.12.xaml 构建模板?

最佳答案

要启用使用 TFS 构建恢复 NuGet 包,请按照以下步骤操作。检查这个blog了解详情。

  1. 在 VS IDE 中,转到“工具”->“选项”->“NuGet 包管理器”-> 启用“允许 NuGet 下载缺失的包”。
  2. 删除.nuget 文件夹中的 NuGet.exe 和 NuGet.targets 文件。这两个文件也将从版本控制中删除。
  3. 从 .proj 文件中删除以下标记:

    1. <RestorePackages>true</RestorePackages>

2.<Import Project="$(SolutionDir)\.nuget\nuget.targets" />

3. <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information,
see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
</Target>

对于另一个有关找不到 TfvcTemplate.12.xaml 流程模板的问题,您可以首先在 VSO 中创建一个新的团队项目,下载流程文件并将其 checkin 版本控制。然后编辑构建定义,单击“流程”选项卡上的“新建”按钮,在版本控制中浏览流程文件。

关于tfsbuild - TFS 2013 构建 Controller 不尊重 NuGet 包恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32101429/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com