RoslynTargetsPath, по-видимому, не установлен для VisualStudio - PullRequest
1 голос
/ 17 мая 2019

Сегодня (без инициирования каких-либо обновлений) VisualStudio (VisualStudio для Mac Community версии 8.0.6, сборка 4) неожиданно продолжал говорить мне, что мне нужно обновить Mono (я на Mac). Я так и сделал. После этого ни один из моих проектов не скомпилируется, потому что кажется, что конфигурация испорчена, и я думаю, что RoslynTargetsPath не установлен. Я использую VisualStudio с Unity, если это что-то меняет.

Первая ошибка, которую я получил, была

"~ / Library / кэша / VisualStudio / 8,0 / MSBuild / 17745_1 // Microsoft.CSharp.Core.targets не был найден "

Глядя на файловую систему, я увидел, что файл находится в подпапке Rosyln. Поэтому я отредактировал свой файл Assembly-CSharp.csproj и изменил определение импорта с

 <Import Project="$(MSBuildToolsPath)/Microsoft.CSharp.Core.targets" />

до

<Import Project="$(MSBuildToolsPath)/Roslyn/Microsoft.CSharp.Core.targets" />

Как только я это сделал, ошибка изменилась на

"Цель" Build "не существует в проекте. (MSB4057)"

Я исследовал это и попытался добавить это в файл проекта

Ошибка вернулась к этому

"~ / Library / кэша / VisualStudio / 8,0 / MSBuild / 17745_1 // Microsoft.CSharp.Core.targets не был найден ".

Обратите внимание на «//» в пути. Я проверил мой файл MSBuild.dll.config, и определение для RoslynTargetsPath это

<property name="RoslynTargetsPath" value="$([MSBuild]::GetToolsDirectory32())\Roslyn" />

Итак, я изменил импорт в файле моего проекта на этот

<Import Project="$(RoslynTargetsPath)/Microsoft.CSharp.Core.targets" />

И ошибка изменилась на

"/ Microsoft.CSharp.Core.targets не найден".

Похоже, что RoslynTargetsPath - пустая строка. Я не знаю, почему я был вынужден обновить Mono, когда VisualStudio не был обновлен.

...