OmniSharp не работает должным образом в одном проекте, но находится в другом - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть два идентичных проекта, которые я использую для создания полнофункционального веб-интерфейса Ember с .NET Core JSON API.Я заметил, что в одном проекте OmniSharp не предоставляет оператор include using, но в другом проекте.Кроме того, для проекта, где OmniSharp не предоставляет оператор include using, OmniSharp предоставляет опцию для remove unused usings.Когда я выбираю эту опцию, она удаляет все, кроме двух using операторов, что неверно, потому что теперь приложение не будет собираться.

Я попытался удалить VSCode и удалить папку .vscode в пути C:\windows\users, которая содержит установленные расширения, а также удалить все временные файлы.Однако это не решает проблему.

Учитывая, что OmniSharp работает в одном проекте, но не в другом, единственное, о чем я могу подумать на этом этапе, это то, что либо OmniSharp настроен на уровне проектаили есть коррупция в данном проекте.Кто-нибудь когда-либо испытывал эту проблему?Любые идеи о том, как я могу решить / исправить это?

Примечание: я бы не хотел удалять проект, в котором OmniSharp не работает, потому что для его восстановления потребуется около недели.

Обновление:

После дополнительных исследований я обнаружил следующую ошибку в журнале OmniSharp

Система проекта 'OmniSharp.Script.ScriptProjectSystem' вызвала исключение во время инициализации.System.IO.DirectoryNotFoundException: Не удалось найти часть пути 'd: ... \ tmp \ broccoli_merge_trees-input_base_path-YLNtHXfX.tmp \ 1-private'.в System.IO .__ Error.WinIOError (Int32 errorCode, String MaybeFullPath) в System.IO.FileSystemEnumerableIterator 1.CommonInit() at System.IO.FileSystemEnumerableIterator 1..ctor (Строковый путь, String originalUserPath, Строка searchPattern, SearchOption searchOption, SearchResultHandler 1 resultHandler, Boolean checkHost) at System.IO.DirectoryInfo.EnumerateFileSystemInfos(String searchPattern, SearchOption searchOption) at Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoWrapper.<EnumerateFileSystemInfos>d__4.MoveNext() at System.Collections.Generic.List 1.InsertRange (index, коллекция IEnumerable`1) в Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext.Match (каталог DirectoryInfoBase, строка String parentRelativePath) в Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext.Match (каталог DirectoryInfoBase, строка родительского_каталога)FileSystemGlobbing.Internal.MatcherContext.Match (каталог DirectoryInfoBase, строка String parentRelativePath) в Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext.Match (каталог DirectoryInfoBase, String parentRelativePath) в каталоге Microsoft.Externalsions.FileSystemGloBatMatchIncher.INFparentRelativePath) в Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext.Match (каталог DirectoryInfoBase, строка String parentRelativePath) в Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext.Execute () в Microsoft.Extensions.FileSystemGlobbing.MatcherExtensions.GetResultsInFullPath (сопоставитель Matcher.jectSignSignSign.Shint.Конфигурационная конфигурация) в OmniSharp.WorkspaceInitializer.Initialize (IServiceProvider serviceProvider, CompositionHostpositionHost)

1 Ответ

0 голосов
/ 23 февраля 2019

Я проследил проблему до папки tmp в проекте Ember, заполненной файлами и папками, которые стали поврежденными.Я установил дополнение Ember clean-tmp и запустил его.Как только папка tmp была очищена, я перезапустил VSCode и проверил журнал OmniSharp, и ошибки исключения исчезли.Следовательно, оператор OmniSharp Using начал работать agian.

Мораль истории: следите за этой папкой tmp!

https://www.npmjs.com/package/ember-clean-tmp

...