错误消息是:
警告MSB3277:发现不同版本之间存在冲突 无法解决的相同依赖程序集。这些参考 当日志详细程度设置为时,构建日志中会列出冲突 详细。
这必须是最令人恼火的错误消息之一,因为由于某种原因,他们决定(有一个关于此的线程)不改变如何处理此错误,迫使用户去寻找问题。
我有很多这样的人:
'参考:C:\ Program之间发生冲突 文件\ DOTNET \ SDK \ NuGetFallbackFolder \ system.appcontext \ 4.3.0 \参考\ net463 \ System.AppContext.dll” 和'参考:C:\ Program Files(x86)\ Microsoft Visual 工作室\ 2017年\企业\的MSBuild \微软\ Microsoft.NET.Build.Extensions \ net461 \参考\ System.AppContext.dll”。 选择'参考:C:\ Program Files(x86)\ Microsoft Visual 工作室\ 2017年\企业\的MSBuild \微软\ Microsoft.NET.Build.Extensions \ net461 \参考\ System.AppContext.dll” 因为AssemblyVersion'4.1.2.0'大于'4.1.1.0'。
首先,用户/ administrator / .nuget / packages中的旧程序集出错。 我删除了该文件夹。
现在可以在\ program files \ dotnet \ sdk \ NuGetFallbackFolder中找到旧的程序集
整个项目使用.NET 4.7
有没有人看到这个问题?
答案 0 :(得分:0)
我发现解决方案选项“恢复Nuget包”效果不佳。
简而言之,我必须运行NuGet命令const myController = new Controller();
export default class MyClass extends Component {
method_1() {
myController.doAllTheStuff();
}
method_n() {
myController.doAllTheStuff();
}
}
,然后在解决方案中整合不同的版本。
由于Resharper构建,我在输出中获得详细调试时遇到了一些问题,我也必须禁用它。我写了一篇关于它的更详细的文章here。
答案 1 :(得分:0)
尝试识别(app / web).config文件中的任何硬编码程序集引用。 删除这些文件,并使用dotnet / nuget通过单个packages.config文件还原您的程序包。