Microsoft.Net.Compilers大大增加了编译时间

时间:2018-05-08 12:50:22

标签: c# compilation

在一个相对较小的解决方案(40个项目)上,我试图实现Microsoft.Net.Compilers Nuget包。我是通过Directory.build.props文件:

完成的
<Project>
  <ItemGroup>
    <PackageReference Include="Microsoft.Net.Compilers" Version="2.8.0"/>
    <!-- some other packages down below here that where already there -->
  </ItemGroup>
</Project>

在使用该软件包之前,在Visual Studio 2017(15.7.0)中从头开始编译整个项目大约需要18秒。实施包后,大约需要80秒。我可以想象nuget包会让事情变得有点慢。但我不希望它花费4倍的时间。

在互联网上浏览时,我发现https://github.com/dotnet/roslyn/issues/12360用户在那里描述了或多或少相同的症状我注意到了(多个csc.exe在编译时声称拥有完整的CPU能力。差异是我有一个VBCSompiler.exe,但它声称0%cpu。)我尝试了在我的csproj文件中设置UseSharedCompilation属性为true的讨论中的解决方法(该属性之前不存在),但是没有& #39; t帮助。

TLTR: 是否有一些理由说明Microsoft.Net.Compilers会大大增加编译时间?或者也许是一种了解所有时间的方式?

版本摘要:

  • Visual studio版本:15.7.0
  • C#level:7
  • Microsoft.Net.Compilers版本:2.8.0
  • ms .net 4.6.1

0 个答案:

没有答案