From 7f72818a2a8b79dd0f88157bfff430a2c08b0242 Mon Sep 17 00:00:00 2001 From: Trey Bastian Date: Thu, 19 Feb 2026 11:27:04 +0000 Subject: streamlined lsp formatter linter and debugger setup --- lua/config/java.lua | 171 ++++++++++++++++++++++++++-------------------------- 1 file changed, 84 insertions(+), 87 deletions(-) (limited to 'lua/config/java.lua') diff --git a/lua/config/java.lua b/lua/config/java.lua index c2e9de3..a59b495 100644 --- a/lua/config/java.lua +++ b/lua/config/java.lua @@ -1,94 +1,91 @@ -vim.pack.add({ - "https://github.com/nvim-java/nvim-java", - "https://github.com/JavaHello/spring-boot.nvim", - "https://github.com/iamkarasik/sonarqube.nvim", -}) +-- only if we have java on our sytem +if vim.fn.executable("java") == 1 then + vim.pack.add({ + "https://github.com/nvim-java/nvim-java", + "https://github.com/JavaHello/spring-boot.nvim", + "https://github.com/iamkarasik/sonarqube.nvim", + }) -require("java").setup() + require("java").setup() -local function path_to_class(path) - local name = path:gsub("%.java$", "") - local class_path = name:match(".*/java/(.*)") or name - class_path = class_path:gsub("/", ".") - return class_path -end + local function path_to_class(path) + local name = path:gsub("%.java$", "") + local class_path = name:match(".*/java/(.*)") or name + class_path = class_path:gsub("/", ".") + return class_path + end --- find java files only --- inspired by --- https://github.com/MuriloGhignatti/nvim-config/blob/main/lua/safe/plugins/fuzzy_finder.lua -vim.keymap.set("n", "jc", function() - require("telescope.builtin").find_files({ - prompt_title = "Java Classes", - cwd = vim.fn.getcwd(), - find_command = { - "rg", - "--files", - "--type", - "java", - "--glob", - "!*.properties", - "--glob", - "!*Test.java", - "--glob", - "!**/test/**", - }, - path_display = function(_, path) - return path_to_class(path) - end, - previewer = true, - }) -end) + -- find java files only + -- inspired by + -- https://github.com/MuriloGhignatti/nvim-config/blob/main/lua/safe/plugins/fuzzy_finder.lua + vim.keymap.set("n", "jc", function() + require("telescope.builtin").find_files({ + prompt_title = "Java Classes", + cwd = vim.fn.getcwd(), + find_command = { + "rg", + "--files", + "--type", + "java", + "--glob", + "!*.properties", + "--glob", + "!*Test.java", + "--glob", + "!**/test/**", + }, + path_display = function(_, path) + return path_to_class(path) + end, + previewer = true, + }) + end) -vim.keymap.set("n", "jt", function() - require("telescope.builtin").find_files({ - prompt_title = "Java Tests", - cwd = vim.fn.getcwd(), - find_command = { - "rg", - "--files", - "--type", - "java", - "--glob", - "!*.properties", - "--glob", - "*Test*.java", - "--glob", - "**/test/**.java", - }, - path_display = function(_, path) - return path_to_class(path) - end, - previewer = true, - }) -end) + vim.keymap.set("n", "jt", function() + require("telescope.builtin").find_files({ + prompt_title = "Java Tests", + cwd = vim.fn.getcwd(), + find_command = { + "rg", + "--files", + "--type", + "java", + "--glob", + "!*.properties", + "--glob", + "*Test*.java", + "--glob", + "**/test/**.java", + }, + path_display = function(_, path) + return path_to_class(path) + end, + previewer = true, + }) + end) --- mason sonarqube config -local extension_path = vim.fn.stdpath("data") .. "/mason/packages/sonarlint-language-server/extension" + -- mason sonarqube config + local extension_path = vim.fn.stdpath("data") .. "/mason/packages/sonarlint-language-server/extension" -require("sonarqube").setup({ - lsp = { - cmd = { - vim.fn.exepath("java"), - "-jar", - extension_path .. "/server/sonarlint-ls.jar", - "-stdio", - "-analyzers", - extension_path .. "/analyzers/sonargo.jar", - extension_path .. "/analyzers/sonarhtml.jar", - extension_path .. "/analyzers/sonariac.jar", - extension_path .. "/analyzers/sonarjava.jar", - extension_path .. "/analyzers/sonarjavasymbolicexecution.jar", - extension_path .. "/analyzers/sonarjs.jar", - extension_path .. "/analyzers/sonarphp.jar", - extension_path .. "/analyzers/sonarpython.jar", - extension_path .. "/analyzers/sonartext.jar", - extension_path .. "/analyzers/sonarxml.jar", + require("sonarqube").setup({ + lsp = { + cmd = { + vim.fn.exepath("java"), + "-jar", + extension_path .. "/server/sonarlint-ls.jar", + "-stdio", + "-analyzers", + extension_path .. "/analyzers/sonargo.jar", + extension_path .. "/analyzers/sonarhtml.jar", + extension_path .. "/analyzers/sonariac.jar", + extension_path .. "/analyzers/sonarjava.jar", + extension_path .. "/analyzers/sonarjavasymbolicexecution.jar", + extension_path .. "/analyzers/sonarjs.jar", + extension_path .. "/analyzers/sonarphp.jar", + extension_path .. "/analyzers/sonarpython.jar", + extension_path .. "/analyzers/sonartext.jar", + extension_path .. "/analyzers/sonarxml.jar", + }, }, - }, - csharp = { - enabled = true, - omnisharpDirectory = extension_path .. "/omnisharp", - csharpOssPath = extension_path .. "/analyzers/sonarcsharp.jar", - csharpEnterprisePath = extension_path .. "/analyzers/csharpenterprise.jar", - }, -}) + }) +end -- cgit v1.2.3