自使用 Visual Studio 2015 以来发生构建错误。在 Visual Studio 2015 中构建时,这种情况很少发生。在 TeamCity 中构建时,这种情况经常发生。
[Visual Studio 2015 中的错误]
https://i.sstatic.net/hKbbe.png
[TeamCity 中的错误]
我知道自从问这个问题以来已经有一段时间了,但是当我使用 SO 作为自己的参考时,我也遇到了这个问题,我想分享我的解决方案。
.snk 文件用于签署项目。您可能需要制作一个新的。
希望这有帮助。
尝试清理构建使用的临时文件夹。 当临时文件夹有很多文件时,我遇到过不同类型的问题。
一些工具使用 GetTempFileName,当 temp 有大量文件时,它们会出现错误
如果使用 GetTempFileName 方法创建超过 65535 个文件而不删除以前的临时文件,则会引发 IOException。
这可能是 Roslyn 编译器的此问题的一个实例。解决方法是添加
<UseSharedCompilation>False</UseSharedCompilation>
.csproj 文件中任意
<PropertyGroup>
节点下。
当我将 Resharper 缓存移至系统温度时,它就开始了。当我将其移回解决方案文件夹时,问题就消失了,我可以再次构建。
我也遇到了同样的问题。在 Visual Studio 2015 中,我使用以下步骤修复了该问题:
+1 给@stukselbax 让我走上正轨 还从此链接获得了帮助
我在 csproj 文件中使用“/m:1”作为 msbuild 参数,并将“SignPublic”属性设置为 true。
今天刚刚在 Visual Studio 2022 中遇到了这个问题 - 我弄乱了 csproj 文件,最终导致 snk 文件的文件路径错误。我通过将文件路径更改为正确来修复它。
右键项目->卸载(这样就可以编辑csproj文件了)
在
<PropertyGroup>
下检查<AssemblyOriginatorKeyFile>
标签
我的代码是:
<SignAssembly>true</SignAssembly> <AssemblyOriginatorKeyFile>../NAMEHERE.snk</AssemblyOriginatorKeyFile>
NAMEHERE 特定于我的项目,您的会有所不同。查看你的 snk 文件。前面的 ../ 会有所不同,请检查您的 snk 文件的文件路径。如果您像我一样通过弄乱 csproj 文件而导致此错误,那么正确的答案是更改文件路径之前的内容。 :)
右键单击项目 -> 重新加载
双击您的项目并设置为 false:
<SignAssembly>false</SignAssembly>
<PublicSign>false</PublicSign>
删除此行:
<AssemblyOriginatorKeyFile>CompanyName.snkk</AssemblyOriginatorKeyFile>
我正在使用 Visual Studio 2022 构建一个开源项目。开源项目抛出此错误。 我不需要签署项目来进行测试。
在 Visual Studio 2022 中,右键单击该项目。 左键单击“属性”。 向下滚动到构建/强命名。 在对程序集进行签名下,取消选中对输出程序集进行签名以为其指定一个强名称。
构建项目,错误不再显示。