Мы никогда не заканчиваем с одним программным обеспечением. Sublime Text 4 был выпущен несколько дней назад, я пытаюсь найти руководство по настройке Java LSP. Цель просто для лучшего чтения и большей свободы в проектах Java (например, я могу использовать Go to definition).
Предпосылки
- Пакет LISP sublime package
- Двоичный файл Java
- Eclipse jdt ls, скачать здесь Eclipse jdt ls, скачать здесь
Настройки LSP
Найдите настройки LSP, затем примените приведенную ниже конфигурацию к этому файлу. Эта конфигурация задана для пользователя Mac.
////для macOS
{
"clients":
{
"jdtls": {
"command": [
"java",
"--add-modules=ALL-SYSTEM",
"--add-opens",
"java.base/java.util=ALL-UNNAMED",
"--add-opens",
"java.base/java.lang=ALL-UNNAMED",
"-Declipse.application=org.eclipse.jdt.ls.core.id1",
"-Dosgi.bundles.defaultStartLevel=4",
"-Declipse.product=org.eclipse.jdt.ls.core.product",
"-Dfile.encoding=UTF-8",
"-DwatchParentProcess=true", // false on windows, true other OSs
"-Xmx1G",
"-XX:+UseG1GC",
"-XX:+UseStringDeduplication",
"-jar",
"/jdt-language-server-1.1.2-202105191944/plugins/org.eclipse.equinox.launcher_1.6.100.v20201223-0822.jar", // 1. replace the PATH/TO with your own 2. replace * with the file version
"-configuration",
"/jdt-language-server-1.1.2-202105191944/config_mac", // 1. replace the PATH/TO with your own 2. choose the config folder based on the OS
"-data",
"/T//jdt_ws" // replace with the temp folder in your system. macOS: echo $TMPDIR
],
"enabled": true,
"languageId": "java",
"scopes": ["source.java"],
"syntaxes": ["Packages/Java/Java.sublime-syntax"]
}
}
}
//для окон
{
"clients":
{
"jdtls": {
"command": [
"java",
"--add-modules=ALL-SYSTEM",
"--add-opens",
"java.base/java.util=ALL-UNNAMED",
"--add-opens",
"java.base/java.lang=ALL-UNNAMED",
"-Declipse.application=org.eclipse.jdt.ls.core.id1",
"-Dosgi.bundles.defaultStartLevel=4",
"-Declipse.product=org.eclipse.jdt.ls.core.product",
"-Dfile.encoding=UTF-8",
"-DwatchParentProcess=false", // false on windows, true other OSs
"-Xmx1G",
"-XX:+UseG1GC",
"-XX:+UseStringDeduplication",
"-jar",
"\\jdt-language-server-1.1.2-202105191944\\plugins\\org.eclipse.equinox.launcher_1.6.100.v20201223-0822.jar", // 1. replace the PATH/TO with your own 2. replace * with the file version
"-configuration",
"\\.lsp-tools\\jdt-language-server-1.1.2-202105191944\\config_win", // 1. replace the PATH/TO with your own 2. choose the config folder based on the OS
"-data",
"\\.lsp-tools\\jdt_ws" // replace with the temp folder in your system. macOS: echo $TMPDIR
],
"enabled": true,
"languageId": "java",
"scopes": ["source.java"],
"syntaxes": ["Packages/Java/Java.sublime-syntax"]
}
}
}
Привязка ключа LSP
Для простой цели я просто хочу использовать Переход к определению. Откройте привязку ключа LSP, затем вставьте его
[
// Go To Definition
{
"command": "lsp_symbol_definition",
"args": {
"side_by_side": false
},
"keys": [
"ctrl+d"
],
"context": [
{
"key": "lsp.session_with_capability",
"operator": "equal",
"operand": "definitionProvider"
},
{
"key": "auto_complete_visible",
"operator": "equal",
"operand": false
}
]
},
]
Благодаря
Чтобы завершить эту настройку, я прочитал несколько полезных статей, которые помогут мне понять, как правильно это сделать.
- Чтобы завершить эту настройку, я прочитал несколько полезных статей, которые помогут мне понять, как правильно это сделать.
- Чтобы завершить эту настройку, я прочитал несколько полезных статей, которые помогут мне понять, как правильно это сделать.
- Чтобы завершить эту настройку, я прочитал несколько полезных статей, которые помогут мне понять, как правильно это сделать.
Диагностика
Нажав Cmd + Shift + P и выполнив поиск “LSP”, вы можете увидеть своего рода панель журнала, которая поможет вам отладить, если что-то пойдет не так.
Дело сделано. Счастливого кодирования!
Оригинал: “https://dev.to/vuong/java-lsp-on-sublime-text-3nif”