Nuget不恢复生成的包?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (44)

我刚刚在一台新机器上创建了一个工作区,从TFS获得了我们的最新项目,启用了NuGet还原,并得到了以下(跳过的)输出:

1>------ Rebuild All started: Project: Caching, Configuration: Debug Any CPU ------
1>  Restoring NuGet packages...
1>  To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
1>  All packages listed in packages.config are already installed.
1>  Caching Framework -> C:\MyProjLocation\Caching\bin\Debug\Caching.dll
2>------ Rebuild All started: Project: Library, Configuration: Debug Any CPU ------
2>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1635,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "LumenWorks.Framework.IO". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
2>C:\MyProjLocation\Library\SomeClass.cs(2,7,2,17): error CS0246: The type or namespace name 'LumenWorks' could not be found (are you missing a using directive or an assembly reference?)

========== Rebuild All: 1 succeeded, 1 failed, 0 skipped ==========

任何NuGet包都没有恢复(为了可读性起见,我从上面的输出中删除了10多个包)。

看起来NuGet甚至没有试图恢复第二个项目(库)的包。

我已经尝试将NuGet目标导入移到CSharp目标导入下面的Library.csproj文件,如前所述,但它仍然不起作用:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />

我正在VisualStudio 2013上运行最新版本的NuGet(2.7.41101.371)。

编辑:packages.config存在,NuGet包管理器使用正确的包标记了Library项目。

提问于
用户回答回答于

是否也从磁盘中删除了NuGet.Target文件?

如果NuGet.tagets文件存在,VisualStudio/NuGet.exe将尝试执行MSBuild包还原。

用户回答回答于

在NuGet恢复丢失的包之前,我必须进入源代码管理并删除Packages文件夹中的所有文件(存储库.config除外)。这样做的目的是使用包恢复,而不是将包签入源代码管理。如果它看到源代码管理中的包,就不会下载它们。

所属标签

可能回答问题的人

  • uncle_light

    5 粉丝518 提问8 回答
  • 嗨喽你好

    7 粉丝480 提问8 回答
  • 人生的旅途

    10 粉丝484 提问7 回答
  • 无聊至极

    4 粉丝504 提问6 回答

扫码关注云+社区

领取腾讯云代金券