【发布时间】:2016-08-05 01:34:58
【问题描述】:
我已编辑全局 nuget.config 以使用单个包文件夹。
我有一个由 VS2015 创建的新空白 C# 控制台项目。我添加了一个 NuGet 引用,例如 Newtonsoft.Json,然后 VS 创建一个 packages.config 并将 Newtonsoft.Json 列为一个包。
这将被添加到 .csproj 文件中。
<Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\..\..\CxCache\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
</Reference>
在构建项目时,Newtonsoft.Json 二进制文件被复制到本地 bin 文件夹中。如果我从本地 bin 中删除 Newtonsoft.Json dll,它将在构建后重新复制。
但是我不想在 csproj 中使用 HintPath 属性(不想签入 repo)所以我想,我应该能够删除 HintPath 并且它会正常工作。我从 .csproj 中删除 HintPath 行并从本地 bin 中删除 Newtonsoft.Json dll。
这次在构建时,全局 nuget 包文件夹中的 Newtonsoft.Json 二进制文件不会复制到本地 bin。有解决办法吗?
【问题讨论】:
-
通常你会使用“在构建时恢复包”来避免检查 NuGet ......(显然不是你问题的答案,但可能你应该这样做)
标签: c# .net visual-studio msbuild