Experimental feature in GraalVM

言語サーバープロトコル

GraalVM は、ゲスト言語に 言語サーバープロトコル(LSP)をサポートしています。これは、コード補完、使用箇所の検索などの機能を、Visual Studio Code などの IDE のようなクライアントツールに提供します。

GraalVM 言語サーバーを起動するには、次の Node.js アプリケーションの例のように、コマンドラインランチャーに --lsp オプションを渡します。

注:GraalVM 言語サーバーはテクノロジープレビューとして提供されており、ユーザーはアクティベーションのために --experimental-options オプションを渡す必要があります。

$JAVA_HOME/bin/node --experimental-options --lsp app.js
[Graal LSP] Starting server and listening on localhost/127.0.0.1:8123
Example app listening on port 3000!

コード補完 Node.js ポリグロットアプリケーションの一部である R スクリプト用の Oracle GraalVM 提供のコード補完

GraalVM 言語サーバー自体は、通常はアプリケーションソースを解析することで収集される静的データを提供しません(これらのデータは動的言語の場合に時々曖昧になるため)。代わりに、言語サーバーは、アプリケーションランタイムから収集された正確な動的データを返すように設計されています。

ただし、言語サーバーは、特定の言語用に特別に記述された既存の言語サーバー(--lsp.Delegates ランチャーオプションを使用)に委任し、これらのサーバーから返された静的データを自身の動的データとマージして 1 つの結果にすることができます。

GraalVM 言語サーバーとその GraalVM Visual Studio Code 拡張機能での使い方の詳細については、Visual Studio Code Marketplace のドキュメントを参照してください。

私たちとつながりましょう