首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在.NET内核中禁用“清理解决方案”的并行执行

在.NET内核中禁用“清理解决方案”的并行执行
EN

Stack Overflow用户
提问于 2021-05-06 18:45:21
回答 2查看 92关注 0票数 1

我们在.NET核心3.1中有一个包含多个项目的解决方案。所有项目都有相同的构建输出。

直到最近构建开始在所有机器上失败之前,这种方法都工作得很好。(有没有更新?)

Build works重建失败。清理+重建有效。

我可以在Visual Studio和Rider中重现这个问题。

根本原因如下:

重建开始将每个项目作为单独的任务并行构建。每个任务首先删除输出文件夹,然后生成一个项目。

因为所有项目都有相同的输出文件夹,并且是并行运行的,所以它们只是删除由另一个项目构建创建的文件,这会导致错误:

代码语言:javascript
复制
  Microsoft.Common.CurrentVersion.targets(4919, 5): [MSB3030] Could not copy the file "C:\myproject\x64\Debug\Project1.deps.json" because it was not found.
  Microsoft.Common.CurrentVersion.targets(4919, 5): [MSB3030] Could not copy the file "C:\myproject\x64\Debug\Project1.runtimeconfig.json" because it was not found.
  Microsoft.Common.CurrentVersion.targets(4919, 5): [MSB3030] Could not copy the file "C:\myproject\x64\Debug\Project1.runtimeconfig.dev.json" because it was not found.

很明显,一个简单的解决方案是做单独的输出文件夹,但我不能这样做,因为其他工具需要这种结构,因为这是一种规则。

我想在每个项目clean+build被触发之前,首先清理重建输出。

我能想到的另一个解决方案是在单独的文件夹中生成deps.json,runtimeconfigs文件。

对此有什么解决方案吗?

EN

回答 2

Stack Overflow用户

发布于 2021-05-11 00:23:49

也许您可以在解决方案属性中设置项目依赖关系...这样,他们就应该被迫一个接一个地建造。例如:A依赖B,B依赖C

票数 0
EN

Stack Overflow用户

发布于 2021-05-17 18:08:36

您可能不应该更改构建输出路径,简单地进行发布?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67416581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档