From 6538d1c611c585018d3f545f2dc559ba83d56360 Mon Sep 17 00:00:00 2001 From: anth64 Date: Tue, 3 Dec 2024 20:48:51 +0100 Subject: [PATCH] add jdtls. --- ftplugin/java.lua | 5 +++++ lua/plugins/lsp.lua | 11 ++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 ftplugin/java.lua diff --git a/ftplugin/java.lua b/ftplugin/java.lua new file mode 100644 index 0000000..63b59f6 --- /dev/null +++ b/ftplugin/java.lua @@ -0,0 +1,5 @@ +local config = { + cmd = { '/path/to/jdt-language-server/bin/jdtls' }, + root_dir = vim.fs.dirname(vim.fs.find({ 'gradlew', '.git', 'mvnw' }, { upward = true })[1]), +} +require('jdtls').start_or_attach(config) diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 14cf84b..6a8c64d 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -1,10 +1,11 @@ return { - {"nvim-treesitter/nvim-treesitter", build = ":TSUpdate"}, + { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" }, + { "mfussenegger/nvim-jdtls" }, { "neovim/nvim-lspconfig", config = function() local lspconfig = require("lspconfig") - lspconfig.lua_ls.setup{} + lspconfig.lua_ls.setup {} end, }, { @@ -26,7 +27,7 @@ return { vim.api.nvim_create_autocmd('LspAttach', { desc = 'LSP actions', callback = function(event) - local opts = {buffer = event.buf} + local opts = { buffer = event.buf } vim.keymap.set('n', 'K', 'lua vim.lsp.buf.hover()', opts) vim.keymap.set('n', 'gd', 'lua vim.lsp.buf.definition()', opts) vim.keymap.set('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) @@ -35,10 +36,10 @@ return { vim.keymap.set('n', 'gr', 'lua vim.lsp.buf.references()', opts) vim.keymap.set('n', 'gs', 'lua vim.lsp.buf.signature_help()', opts) vim.keymap.set('n', '', 'lua vim.lsp.buf.rename()', opts) - vim.keymap.set({'n', 'x'}, '', 'lua vim.lsp.buf.format({async = true})', opts) + vim.keymap.set({ 'n', 'x' }, '', 'lua vim.lsp.buf.format({async = true})', opts) vim.keymap.set('n', '', 'lua vim.lsp.buf.code_action()', opts) end, }) - end, + end, } }