我可以阻止NuGet在我的项目文件中降级(参数化)引用吗?

时间:2015-12-23 22:23:13

标签: f# msbuild nuget teamcity

有时会发生这种情况,并非总是如此,我无法准确描述复制它所需的环境:

  • 我在F#4.0中有一个测试项目,它自然地引用了FSharp.Core 4.4.0.0
  • 测试项目使用通过NuGet
  • 添加的FsUnit
  • -ReInstall或更新/恢复时,FSharp.Core参考会降级为FSharp.Core 4.0.0.1

基本上是.fsproj文件中的以下行:

<Reference Include="FSharp.Core, Version=$(TargetFSharpCoreVersion), Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
  <Private>True</Private>
</Reference>

替换为:

<Reference Include="FSharp.Core">
  <HintPath>..\packages\FSharp.Core.4.0.0.1\lib\net40\FSharp.Core.dll</HintPath>
  <Private>True</Private>
</Reference>

我非常希望防止这种情况发生,特别是在TeamCity构建服务器上,由于此行为,该服务器当前具有与本地构建不同的测试结果。

我尝试使用-DependencyVersion:HighestPatch,但这似乎没有效果。

0 个答案:

没有答案