aboutsummaryrefslogtreecommitdiff
path: root/lua/config/java.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/config/java.lua')
-rw-r--r--lua/config/java.lua171
1 files changed, 84 insertions, 87 deletions
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", "<leader>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", "<leader>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", "<leader>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", "<leader>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