Msbuild 由于nuget引用具有约定程序集,生成计算机上的ccrewrite失败
以下是全部内容:Msbuild 由于nuget引用具有约定程序集,生成计算机上的ccrewrite失败,msbuild,nuget,code-contracts,nuget-package,Msbuild,Nuget,Code Contracts,Nuget Package,以下是全部内容: 我构建了两个包含 A.nupkg:A.dll,A.Contracts.dll B.nupkg:B.dll,B.Contracts.dll;B取决于A 我根据a和B创建了一个新项目和解决方案C,并将“合同参考程序集”设置为Build 在本地,一切都很好。但是,在生成服务器(MSBuild 2012.2)上,ccrewrite引发异常,表示ccrewrite:error:Rewrite由于元数据错误而中止。检查输出窗口。将日志记录设置为Diagnostics,我得到以下信息:
- A.nupkg:A.dll,A.Contracts.dll
- B.nupkg:B.dll,B.Contracts.dll;B取决于A
你知道为什么这在构建服务器上不起作用吗?Visual Studio 2017中仍然存在此问题,这很奇怪,因为它只在我的机器上出现故障。。。解决方案清理,重建没有帮助,也尝试了Visual Studio修复-但同样的结果我知道它“有点”晚了,但你是否以某种方式解决了这个问题?好吧,我放弃了使用代码契约,因为新的C#8将解决我的大多数先决条件问题,即非空性。另外,我也为我迟来的回答感到抱歉:(。