【问题标题】:SpecFlow copy of runtimeconfig.json failsruntimeconfig.json 的 SpecFlow 副本失败
【发布时间】:2021-01-20 13:57:40
【问题描述】:

当我构建我的 Specflow 解决方案时,我收到以下错误:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(4651,5): error MSB3021: Unable to copy file "<myUser>\.nuget\packages\specrun.runner\3.1.48\tools\netcoreapp3.1\TechTalk.SpecRun.Framework.Executor.anycpu.netcoreapp3_1.runtimeconfig.json" to "bin\Debug\netcoreapp3.1\SpecFlowPlusRunner\netcoreapp3.1\\TechTalk.SpecRun.Framework.Executor.anycpu.netcoreapp3_1.runtimeconfig.json". Could not find a part of the path 'bin\Debug\netcoreapp3.1\SpecFlowPlusRunner\netcoreapp3.1\\TechTalk.SpecRun.Framework.Executor.anycpu.netcoreapp3_1.runtimeconfig.json'.

我可以看到路径是错误的,有两个\\ 而不是一个,但我不知道路径来自哪里。该解决方案直到两个小时前才有效,除了代码之外我没有更改任何内容。是否有任何 VS 或 PC 配置/路径,我应该在哪里搜索它们?

删除\obj\bin\.vs、重新启动 VS、重新启动 PC、手动复制文件、更新到另一个 SpecFlow 版本,以及我能想到的其他一切都没有帮助。文件Microsoft.Common.CurrentVersion.targets 尚未更改。我能够构建其他 Specflow 解决方案(使用 .NET Framework,我没有其他使用 .NET Core)。

有什么想法吗?

更新

我们在另一位同事的电脑上测试过,也出现了问题,所以不是我电脑的问题。

另外,我打开了构建日志,可以看到所有 SpecRunner 路径都有两个 \\ 的相同问题

【问题讨论】:

  • 您在受影响的项目中使用的是哪个 .NET Core 版本?
  • 我们有 v.2.2.5 的 Microsoft.AspNetCore.Mvc.Core 包。但似乎所有可能的运行时配置都被复制了,无论使用哪个 .NET Core 版本。如果我知道如何关闭它,它已经对我有所帮助,但我找不到这样的设置。我还用更多信息更新了这个问题。
  • Î 在我的日志文件中也有双 \\,所以我认为这不是问题。 Windows 应该可以处理。
  • 我有 40 个这样的错误,没有其他错误。我有很多与此相关的警告。我不知道还有什么问题。但我会检查我是否能找到其他东西......
  • 2 个想法。 1 您能否检查从我们的项目向导创建的新项目是否适合您? 2. 如果你回到以前的更改会发生什么。然后它会再次工作吗?

标签: c# .net msbuild integration-testing specflow


【解决方案1】:

我遇到了完全相同的错误。在上面的文件夹中创建了我的项目,它工作正常。

好像文件路径太长了。

【讨论】:

  • 当他们有像“TechTalk.SpecRun.Framework.Executor.anycpu.netcoreapp2_1.runtimeconfig.json”这样的文件名时,这并不奇怪。
【解决方案2】:

2-3 天后问题消失。我这边没有任何变化。我的同事也可以构建解决方案。很奇怪,但主要的是它现在可以工作了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-30
    • 2020-06-15
    • 2019-05-29
    • 1970-01-01
    • 1970-01-01
    • 2019-12-25
    • 1970-01-01
    • 2021-10-11
    相关资源
    最近更新 更多