0

我在 React 前端应用程序中包装了一个 Ace 编辑器,并使用 LanguageServerImpl 类提供了一个单独的 Java 后端,以便使用 Xtext 拥有我自己的语法。

我想使用 xtexts 验证和自动完成方法在 Ace Editor 和 Xtext Languageserver 之间传递数据。它的工作方式是在 Editor 和 Langserver 之间发送 JSON-RPC。但是没有文档说明如何将验证或自动完成从编辑器调用到服务器并返回编辑器并返回响应。JSON-RPC 是如何实现这种行为的?

这是我如何初始化 LangServer 的代码。目前输入是一个简单的 System.in 流。

server = injector.getInstance(LanguageServerImpl.class);
org.eclipse.lsp4j.jsonrpc.Launcher<LanguageClient> launcher = LSPLauncher.createServerLauncher(server, in, out);
LanguageClient client = launcher.getRemoteProxy();
server.connect(client);
launcher.startListening();

我的第二个问题是:为什么我需要 LanguageClient?编辑器是由不同服务器托管的客户端...

4

0 回答 0