Как заставить расширение Omnisharp работать в коде Visual Studio
В Visual Studio Code я пытался установить расширение Omnisharp, чтобы я мог получить форматирование (среди прочего).
это журнал C#: установка зависимостей C#... Платформа: win32, x86_64
Загрузка пакета "OmniSharp для Windows (.NET 4.6 / x64)". Повторная попытка загрузки с " https://omnisharpdownload.blob.core.windows.net/ext/omnisharp-win-x64-1.32.8.zip" Ошибка на этапе: downloadAndInstallPackages Ошибка: подключите ETIMEDOUT 93.184.215.201:443
Вы также можете сказать, что расширение не было установлено из-за ошибки журнала Omnisharp: запуск сервера OmniSharp в 1/9/2019, 16:17:59 PM Цель: c:\Users[myUserId]\source\project-folder запущен сервер OmniSharp, Путь: C:\Users[myUserId].vscode\extensions\ms-vscode.csharp-1.17.1.omnisharp\1.32.8\OmniSharp.exe PID: 15188
Система не может найти указанный путь. [ОШИБКА] Ошибка: истекло время загрузки сервера OmniSharp. Используйте параметр "omnisharp.projectLoadTimeout", чтобы переопределить задержку по умолчанию (одна минута).
Кажется, что версия 1.32.8 недоступна, но https://omnisharpdownload.blob.core.windows.net/ext/omnisharp-win-x64-1.30.1.zip есть. Я скачал пакет, распаковал файл и попытался разместить папку там, где он ожидается: C:\Users[myUserId].vscode\extensions\ms-vscode.csharp-1.17.1.omnisharp\1.30.1\OmniSharp.exe -- но окна не разрешают имена папок, начинающиеся с точки в этом месте. Я думал, что нашел решение, и я не сделал.
4 ответа
У меня была проблема ранее. Так же сделал настройку прокси и прочее в settings.json. Но теперь, в новом VS Code, я получаю ту же проблему странно. Наконец, когда я опустошил файл settings.json (удалил все настройки) VS код работает. Он автоматически загружает C# и другие расширения. Итак, попробуйте, если вы установили некоторые настройки для предыдущих версий VS Code, вы должны удалить (прокомментировать) их, чтобы проверить, не вызывает ли это проблемы. [У вас нет прокси, но если у кого-то есть, "да, конечно, прокси-сервер необходим для настройки переменных.npmrc и enviroment в cmd, так как для загрузки файлов необходим интернет"]
В конце этой статьи есть раздел об установке загруженного расширения в виде файлов vsix. В нем также упоминается ошибка, которую вы описали, и о том, как она может быть связана с прокси. Это довольно длинная статья... но я надеюсь, что это поможет.
https://code.visualstudio.com/docs/editor/extension-gallery
"Могу ли я загрузить расширение непосредственно из Marketplace? Некоторые пользователи предпочитают один раз загрузить расширение из Marketplace, а затем установить его несколько раз из локальной папки. Это полезно, когда есть проблемы с подключением или если ваша команда разработчиков хочет использовать исправлен набор расширений.
Чтобы загрузить расширение, перейдите на страницу сведений о конкретном расширении в Marketplace. На этой странице есть ссылка "Скачать расширение" в разделе "Ресурсы", расположенном в правой части страницы.
После загрузки вы можете установить расширение с помощью команды Install from VSIX в раскрывающемся списке команд Extensions."
Для меня сработало следующее:
- (нажмите crtl + shift + P), затем выберите «Настройки»> «Открыть настройки».
- Закомментируйте эти строки, если они есть:
// "http.proxySupport": "on",// "http.proxyAuthorization": null,
После того, как я это сделал, расширение смогло использовать настройки прокси, а расширение загрузилось и заработало!
Установка должна быть проще с VSCode 1.61 (сентябрь 2021 г.), потому что, как OmniSharp/omnisharp-vscode
В выпуске 4775 упоминается:
VS Code теперь поддерживает расширения для конкретных платформ.
Это должно быть очень полезно для C#, поскольку в настоящее время вы загружаете двоичные файлы платформы после активации.
Как подробно описано в публикации Расширения / расширения для платформы :
Расширения могут публиковать разные VSIX для каждой платформы (Windows, Linux, macOS), на которой работает VS Code.
Это полезно, если ваше расширение имеет библиотеки или зависимости для конкретной платформы, поэтому вы можете контролировать точные двоичные файлы, включенные в пакет платформы.
Распространенным вариантом использования является использование собственных узловых модулей.При установке расширения для конкретной платформы VS Code (начиная с версии 1.61.0) ищет пакет расширения, соответствующий текущей платформе.
Если для платформы не было опубликовано ни одного пакета, расширение будет отображаться как отключенное и не может быть установлено.
Следовательно, вам необходимо опубликовать пакет для каждой платформы, которую поддерживает ваше расширение. Чтобы удовлетворить это требование, мы предоставляем инструменты, которые помогут упростить этот потенциально повторяющийся процесс.