Как я должен упаковать свой языковой сервер с моим клиентом?

Я пытаюсь создать языковой сервер для VSCode. Он состоит из клиента и сервера, взаимодействующих через RPC.

Официальные документы имеют рабочий пример с языковым сервером, разделенным на две директории, client и server,

Я хочу упаковать оба файла в файл VSIX, чтобы я мог установить их вместе.

В своем примере они говорят cd к client каталог и запустить vsce package, Однако, если я сделаю это и установлю результирующий пакет, VSCode скажет

"Ошибка: не удается найти модуль" /home/blah/vscode.language-client-example-0.0.1/server/server.js"

Я не могу бежать vsce package в server каталог, как он жалуется

"Ошибка: отсутствует имя издателя"

Как мне это упаковать?

1 ответ

Вы можете опубликовать расширение и попробовать. Официальный документ для публикации расширений

Вкратце для публикации, выполните следующие шаги

  1. npm install -g vsce
  2. vsce publish

Как для упаковки, так и для публикации вам необходимо зарегистрировать издателя.

В документации они объясняют, как создать издателя для себя: https://code.visualstudio.com/api/working-with-extensions/publishing-extension

Тогда в вашем (root) package.json добавьте свой идентификатор издателя: "publisher": "my-publisher"

После этого оба package а также publish должен работать с vsce,

Другие вопросы по тегам