From 516320a43bfaab9cea5140fcbb3d3620060877c4 Mon Sep 17 00:00:00 2001 From: William Boman Date: Sun, 9 Jan 2022 16:32:37 +0100 Subject: fix(jdtls): redefine cmd in on_new_config --- lua/nvim-lsp-installer/servers/jdtls/init.lua | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lua') diff --git a/lua/nvim-lsp-installer/servers/jdtls/init.lua b/lua/nvim-lsp-installer/servers/jdtls/init.lua index 597ca9e1..b8094c08 100644 --- a/lua/nvim-lsp-installer/servers/jdtls/init.lua +++ b/lua/nvim-lsp-installer/servers/jdtls/init.lua @@ -87,6 +87,14 @@ return function(name, root_dir) }, default_options = { cmd = get_cmd(vim.env.WORKSPACE and vim.env.WORKSPACE or path.concat { vim.env.HOME, "workspace" }), + on_new_config = function(config) + -- We redefine the cmd in on_new_config because `cmd` will be invalid if the user has not installed + -- jdtls when starting the session (due to vim.fn.expand returning an empty string, because it can't + -- locate the file). + config.cmd = get_cmd( + vim.env.WORKSPACE and vim.env.WORKSPACE or path.concat { vim.env.HOME, "workspace" } + ) + end, }, } end -- cgit v1.2.3-70-g09d2