Languageserver VSCode + lsp4j не может получить уведомление конечной точки - PullRequest
0 голосов
/ 29 сентября 2019

Я пишу языковой сервер для моего хобби-компилятора, я пишу сам сервер на Java, используя инфраструктуру / библиотеку lsp4j, и я использую декоратор @JsonNotification, код выглядит следующим образом

public interface ExtendedLanguageClient extends LanguageClient {

    @JsonNotification("exampleLang/endpoint")
    void endpoint(HTMLString htmlString);
}

И я хочу вызвать эту конечную точку со стороны JS (в VSCode)

Я делаю это следующим образом:

    client.onReady().then(() => {
        client.onNotification(new NotificationType(`exampleLang/endpoint`), (event: any) => {
            console.log(event);
        });
        console.log("Sending notif");
        client.sendNotification(new NotificationType(`exampleLang/endpoint`));
        console.log("Sent notif");
    });

Но событие onNotificationникогда не звонят, есть идеи почему?Документация по этой конкретной функции очень отсутствует.

Я, конечно, также пытался использовать sendRequest, но это занимает method, а остальное не очень хорошо документировано.

IМне интересно, как получить ответ, который отправляет код Java (это не мое, кто-то другой написал это, я не очень хорош в Java), поскольку в настоящее время onNotification никогда не вызывается.

...