【问题标题】:Could not resolve this reference: NuGet on CI server无法解析此引用:CI 服务器上的 NuGet
【发布时间】:2015-07-08 12:22:18
【问题描述】:

我在连接到 VS Online 的 TFS 构建控制器上运行 CI 构建。我遇到了 NuGet 包的“无法解决此引用”问题,并且我观察到了以前从未见过的行为:

本地包被下载到packages\FluentValidation.5.5.0,而在服务器上,它被下载到packages\FluentValidation.5.5.0.0

Packages.config:

<package id="FluentValidation" version="5.5.0" targetFramework="net45" userInstalled="true" />

.csproj 文件 $(SolutionDir) 用于共享项目 - 适用于所有其他项目:

<Reference Include="FluentValidation, Version=5.5.0.0, Culture=neutral, processorArchitecture=MSIL">     
<HintPath>$(SolutionDir)\packages\FluentValidation.5.5.0\lib\Net40\FluentValidation.dll</HintPath>
  <SpecificVersion>False</SpecificVersion>
  <Private>True</Private>
</Reference>

Nuget 包恢复已启用,所以如果我从包文件夹中本地删除包并重建 - 工作正常。

现在在 CI 服务器上。构建诊断日志状态:

正在安装“FluentValidation 5.5.0.0”。 ... 成功安装“FluentValidation 5.5.0.0”。

然后在构建日志中进一步:

16>C:\Program 文件 (x86)\MSBuild\12.0\bin\amd64\Microsoft.Common.CurrentVersion.targets(1697,5): 警告 MSB3245:无法解析此引用。找不到 程序集“FluentValidation”。检查以确保组装 存在于磁盘上。如果您的代码需要此参考,您可以 得到编译错误。 [C:\Builds\24353... 东西...\projectfile.csproj] 对于搜索路径“{HintPathFromItem}”。 考虑“C:\Builds\24353...东西...\packages\FluentValidation.5.5.0\lib\Net40\FluentValidation.dll”,

正如所料 - 该文件夹中没有包

C:\Builds\24353\... stuff ...\packages\FluentValidation.5.5.0\lib\Net40\.

但是 - 这是因为它被下载到 CI 服务器上的不同文件夹中:

C:\Builds\24353\... stuff ...\packages\FluentValidation.5.5.0.0\lib\Net40\.

(请注意包文件夹名称后面的额外 .0 )。

我不知道额外的 .0 是从哪里来的。该项目似乎也忽略了构建路径。 CI服务器上有VS 2013,我在盒子上更新了NuGet,没有帮助。参考文献中只有 1 个地方有 5.5.0.0 (有 2 个零)。我删除了尾随的 .0。解决方案仍然在本地构建,但不在 CI 上。

更新 在 .csproj 文件中添加第二个提示路径似乎可以修复 CI 服务器上的构建,但会在本地破坏它。我真的无法理解为什么它是本地 v5.0.0 而 CI 服务器上是 v5.0.0.0。

P.S.我已将其报告为错误:https://github.com/NuGet/Home/issues/504

【问题讨论】:

    标签: .net tfs nuget tfsbuild nuget-package-restore


    【解决方案1】:

    原来这是 NuGet 中的一个错误,已在 VS2015 RC 中修复:

    来源:https://github.com/NuGet/Home/issues/504

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-24
      • 2014-07-16
      • 1970-01-01
      • 2013-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-19
      相关资源
      最近更新 更多