未在 TFS Build 上提取 Nuget 包
Nuget package not extracted on TFS Build
我正在尝试在 TFS2015 中设置自动构建。目标是让解决方案在签入时自动构建和测试,如果一切通过,则创建一个新的 Nuget 包并将其放置在本地存储库中。
这个过程适用于我的第一个解决方案,它是一个没有依赖项的简单项目。从该项目创建的 Nuget 包随后被第二个项目用作依赖项。
这在 Visual Studio 中构建时工作正常。程序包会正常下载和解压缩。但是,当我将第二个项目签入 TFS 时,自动构建无法正确处理该包。该包从本地存储库恢复,但未提取。这意味着构建失败,因为它找不到它需要的实际 DLL。
我也在项目中使用 EntityFramework,它工作正常。该包已下载,但随后也被提取。
我已尝试此 中给出的解决方法,但 TFS 服务器没有 C:\Users.nuget\packages 文件夹。
我也曾尝试使用命令 清除 Nuget 缓存,但同样没有帮助。
如果我手动提取由自动构建下载的 Nuget 包,然后 运行 再次构建它就可以工作,这表明问题不在于包本身?
Nuget.exe 版本是 3.5。 .Net版本是4.5标准。包在 packages.config 中引用,也通过项目引用引用。 Nuget.exe 正在用于还原。
知道为什么没有提取本地包吗?
结果是我不小心检查了这个项目中的 packages 文件夹,所以看起来来自我本地 Nuget 文件夹的内容实际上只是从 packages 文件夹中复制出来的该项目。
从 TFS 中删除 packages 文件夹解决了这个问题。
仍然不确定为什么它在任何情况下都没有提取包但问题已解决。
我正在尝试在 TFS2015 中设置自动构建。目标是让解决方案在签入时自动构建和测试,如果一切通过,则创建一个新的 Nuget 包并将其放置在本地存储库中。
这个过程适用于我的第一个解决方案,它是一个没有依赖项的简单项目。从该项目创建的 Nuget 包随后被第二个项目用作依赖项。
这在 Visual Studio 中构建时工作正常。程序包会正常下载和解压缩。但是,当我将第二个项目签入 TFS 时,自动构建无法正确处理该包。该包从本地存储库恢复,但未提取。这意味着构建失败,因为它找不到它需要的实际 DLL。
我也在项目中使用 EntityFramework,它工作正常。该包已下载,但随后也被提取。
我已尝试此
我也曾尝试使用命令
如果我手动提取由自动构建下载的 Nuget 包,然后 运行 再次构建它就可以工作,这表明问题不在于包本身?
Nuget.exe 版本是 3.5。 .Net版本是4.5标准。包在 packages.config 中引用,也通过项目引用引用。 Nuget.exe 正在用于还原。
知道为什么没有提取本地包吗?
结果是我不小心检查了这个项目中的 packages 文件夹,所以看起来来自我本地 Nuget 文件夹的内容实际上只是从 packages 文件夹中复制出来的该项目。
从 TFS 中删除 packages 文件夹解决了这个问题。
仍然不确定为什么它在任何情况下都没有提取包但问题已解决。