-
Notifications
You must be signed in to change notification settings - Fork 214
Eclipse JDT Language Server
archer-n edited this page May 20, 2022
·
8 revisions
-
下载Eclipse JDT LS。例如:我下载的目录是
/home/archer/.cache/jdt-language-server-latest
-
将
jdtls
命令加入环境变量,jdtls
命令位于下载的Eclipse JDT LS目录的bin
目录下。例如: 我的是在/home/archer/.cache/jdt-language-server-latest/bin
。 -
运行
jdtls -h
,确保jdtls
命令在全局可找到。
jdtls -h
usage: jdtls [-h] [--validate-java-version | --no-validate-java-version] [--jvm-arg JVM_ARG]
options:
-h, --help show this help message and exit
--validate-java-version, --no-validate-java-version
--jvm-arg JVM_ARG An additional JVM option (can be used multiple times. Note, use with equal sign.
For example: --jvm-arg=-Dlog.level=ALL
在你的配置中增加 (require 'lsp-bridge-jdtls)
因为jdtls要求每个项目需要指定一个唯一的数据目录,也就是启动命令中的-data
参数。
但是默认的langserver/jdtls.json是不支持根据项目指定-data
参数,所以lsp-bridge-jdtls.el主要的作用是动态的指定一些用户相关的配置,让jdtls能拿到正确的启动参数。
当你(require 'lsp-bridge-jdtls)
后,他会在java-mode-hook
中添加lsp-bridge-get-lang-server-by-project
的实现来自定义语言服务器配置。
(add-hook 'java-mode-hook (lambda ()
(setq-local lsp-bridge-get-lang-server-by-project 'lsp-bridge-get-jdtls-server-by-project)))