Microsoft.Net.Compilers значительно увеличивает время компиляции - PullRequest
0 голосов
/ 08 мая 2018

В относительно небольшом решении (40 проектов) я пытаюсь реализовать пакет Nuget для Microsoft.Net.Compilers. Я сделал это через файл 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>

Перед использованием пакета потребуется около 18 секунд, чтобы скомпилировать весь проект с нуля в visual studio 2017 (15.7.0). После внедрения пакета это занимает около 80 секунд. Я могу представить, что пакет nuget сделает вещи немного медленнее. Но я не ожидал бы, что это займет в 4 раза больше времени.

Просматривая в интернете, я обнаружил, https://github.com/dotnet/roslyn/issues/12360 пользователь там описывает более или менее те же симптомы, которые я заметил (несколько csc.exe требуют полной мощности процессора при компиляции. Разница в том, что у меня есть VBCSompiler .exe, но он требует 0% процессора.) В этом обсуждении я попытался обойти настройку свойства UseSharedCompilation в моих файлах csproj (свойство раньше не существовало), но это не помогло.

транслятор: Есть ли какая-то причина, по которой Microsoft.Net.Compilers значительно увеличивает время компиляции? Или, возможно, способ увидеть, куда все время идет?

Краткое изложение версии:

  • Visual studio версия: 15.7.0
  • C # уровень: 7
  • Версия Microsoft.Net.Compilers: 2.8.0
  • мс .net 4.6.1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...