Wie kann ich verhindern, dass JDTLS jedes Mal beendet wird („Exit-Code 13 und Signal 0“), wenn ich eine Java-Datei in ne
Posted: 14 Jan 2025, 11:19
Ich bin relativ neu in der Verwendung von Neovim und richte die Dinge mit kickstart.nvim ein. Ich habe versucht, JDTLs für die Ausführung mit Mason einzurichten. Es hat bis heute einwandfrei funktioniert, bis es beim Öffnen einer Java-Datei sofort mit der Meldung „Exit-Code 13 und Signal 0“ beendet wurde.
Hier habe ich es geschafft meine Mason-Sachen (siehe meine vollständige init.lua und config für den Kontext):
Hier ist die Ausgabe in der LSP-Protokolldatei:
Wenn ich zuvor Probleme damit hatte, lag das normalerweise daran, dass ich mein Java-Projekt, an dem ich arbeite, neu installieren musste, aber das ist dieses Mal nicht der Fall. Ich habe das etwa 10 Mal gemacht.
Zusätzliche Informationen: Ich verwende Jenv und darauf läuft Java Version 21.0.3
Ich habe es versucht Jede Antwort, die ich auf Github, Stackoverflow und Reddit gefunden habe, einschließlich des Versuchs, nvim-jdtls einfach mit einer ftplugin/java.lua-Datei anstelle meiner durch Kickstart generierten init.lua zu verwenden und alles zu löschen Die jdtls-Dateien im Mason-Ordner löschen und sie neu erstellen usw. Aber nichts hilft.
Ich habe gesehen, dass jemand vorgeschlagen hat, den Eclipse-Cache zu leeren, aber ich weiß nicht, wo das existiert oder wie man das macht Identifizieren Sie es.
Ich habe ungefähr 12 Stunden daran gearbeitet und unglaublich viele Setups ausprobiert. Kann mir bitte jemand erklären, was ich hier falsch mache?
Hier habe ich es geschafft meine Mason-Sachen (siehe meine vollständige init.lua und config für den Kontext):
Code: Select all
local servers = {
lua_ls = {
settings = {
Lua = {
runtime = { version = 'LuaJIT' },
workspace = {
checkThirdParty = false,
library = {
'${3rd}/luv/library',
unpack(vim.api.nvim_get_runtime_file('', true)),
},
},
completion = {
callSnippet = 'Replace',
},
},
},
},
jdtls = {
root_dir = vim.fs.dirname(vim.fs.find({ 'gradlew', '.git', 'mvnw' }, { upward = true })[1]),
},
angularls = {},
html = {},
ts_ls = {},
}
vim.list_extend(ensure_installed, {
'stylua', -- Used to format Lua code
})
require('mason-tool-installer').setup { ensure_installed = ensure_installed }
require('java').setup {}
require('mason-lspconfig').setup {
handlers = {
function(server_name)
local server = servers[server_name] or {}
server.capabilities = vim.tbl_deep_extend('force', {}, capabilities, server.capabilities or {})
require('lspconfig')[server_name].setup(server)
end,
},
ensure_installed = ensure_installed,
automatic_installation = true,
}
end,
},
Code: Select all
[START][2025-01-13 22:21:45] LSP logging initiated
[ERROR][2025-01-13 22:21:45] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "WARNING: Using incubator modules: jdk.incubator.vector, jdk.incubator.foreign\n"
[ERROR][2025-01-13 22:21:45] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.jenv/versions/21.0.3/bin/java" "stderr" "Disabling server log output. No more output will be sent after this.\n"
[ERROR][2025-01-13 22:21:46] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "Jan 13, 2025 10:21:46 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.servlet.LogbackServletContainerInitializer of service jakarta.servlet.ServletContainerInitializer in bundle ch.qos.logback.classic\n"
[ERROR][2025-01-13 22:21:46] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "Jan 13, 2025 10:21:46 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic\n"
[WARN][2025-01-13 22:27:15] ...lsp/handlers.lua:135 "The language server spring-boot triggers a registerCapability handler for workspace/didChangeWorkspaceFolders despite dynamicRegistration set to false. Report upstream, this warning is harmless"
[WARN][2025-01-13 22:27:15] ...lsp/handlers.lua:135 "The language server spring-boot triggers a registerCapability handler for textDocument/semanticTokens despite dynamicRegistration set to false. Report upstream, this warning is harmless"
[START][2025-01-13 22:28:14] LSP logging initiated
[ERROR][2025-01-13 22:28:14] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "WARNING: Using incubator modules: jdk.incubator.vector, jdk.incubator.foreign\n"
[ERROR][2025-01-13 22:28:15] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.jenv/versions/21.0.3/bin/java" "stderr" "Disabling server log output. No more output will be sent after this.\n"
[ERROR][2025-01-13 22:28:15] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "Jan 13, 2025 10:28:15 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.servlet.LogbackServletContainerInitializer of service jakarta.servlet.ServletContainerInitializer in bundle ch.qos.logback.classic\n"
[ERROR][2025-01-13 22:28:15] .../vim/lsp/rpc.lua:770 "rpc" "/Users/hopecah/.local/share/nvim/mason/bin/java" "stderr" "Jan 13, 2025 10:28:15 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic\n"
Zusätzliche Informationen: Ich verwende Jenv und darauf läuft Java Version 21.0.3
Ich habe es versucht Jede Antwort, die ich auf Github, Stackoverflow und Reddit gefunden habe, einschließlich des Versuchs, nvim-jdtls einfach mit einer ftplugin/java.lua-Datei anstelle meiner durch Kickstart generierten init.lua zu verwenden und alles zu löschen Die jdtls-Dateien im Mason-Ordner löschen und sie neu erstellen usw. Aber nichts hilft.
Ich habe gesehen, dass jemand vorgeschlagen hat, den Eclipse-Cache zu leeren, aber ich weiß nicht, wo das existiert oder wie man das macht Identifizieren Sie es.
Ich habe ungefähr 12 Stunden daran gearbeitet und unglaublich viele Setups ausprobiert. Kann mir bitte jemand erklären, was ich hier falsch mache?