Azure 生成管道:dotnet 生成失败,并显示:FileNotFoundException:无法加载文件或程序集"TechTalk.SpecFlow,版本=3.1.0.0



使用任务dotnet build的构建管道开始失败,因为构建引擎版本最近从16.4.0+更改为16.5.0+。

nuget包SpecFlow依赖于库TechTalk.SpecFlow.

异常看起来像:

C:UsersVssAdministrator.nugetpackagesspecflow.tools.msbuild.generation3.1.89buildSpecFlow.Tools.MsBuild.Generation.targets(93,5): Error MSB4018: The "GenerateFeatureFileCodeBehindTask" task failed unexpectedly.
System.IO.FileNotFoundException: Could not load file or assembly 'TechTalk.SpecFlow, Version=3.1.0.0, Culture=neutral, PublicKeyToken=0778194805d6db41'. The system cannot find the file specified.

我做的调查(没有帮助(:

  • 将SpecFlow版本升级到最新版本
  • 使用3.1将SpecFlow版本降级为第一个版本
  • 将程序集TechTalk.SpecFlow显式添加到项目中
  • 使用自托管生成代理
    • 在文件系统中TechTalk.SpecFlow在3.1.0.0版本中可用

有什么想法吗?

这是.NET SDK 3.1.200的一个问题。

作为一种变通方法,您可以停留在.NET SDK 3.1.102,直到它被修复(在.NET SDK、SpecFlow或两者中(。

附加信息:

https://github.com/SpecFlowOSS/SpecFlow/issues/1912https://github.com/dotnet/core/issues/4404#issuecomment-599768237

最新更新