我有一个带有 x 个项目的 Visual Studio 解决方案。每个项目都有(发布)由两行或多行组成的构建事件。
执行构建事件时,会出现锁定问题:
The specified task executable "cmd.exe" could not be run. The process cannot access the file 'D:\Users\<user>\AppData\Local\Temp\tmpff905f7a0bf94226b86296693df6861c.exec.cmd' because it is being used by another process.
我怀疑 Visual Studio 将多行写入应由 cmd.exe 执行的唯一临时文件。我首先怀疑并行构建之间存在冲突,但是由于每个构建似乎都创建了一个唯一的文件,所以这不是原因。
另一个很好的细节是,有问题的文件在出错后没有被删除。当我打开它时,它是空的。
所以...
- 为什么会有冲突?
- 为什么是空的?