:PROPERTIES: :header-args:emacs-lisp: :comments link :results none :ID: 48638197-4f3b-4cd5-ad09-ffc014809fd5 :END: #+title: Java #+filetags: emacs-load #+begin_src emacs-lisp (use-package lsp-java :straight t :config (defun lsp-envrc-mode-setup () (when (or (equal major-mode 'java-mode) (equal major-mode 'java-ts-mode)) (setq lsp-java-server-install-dir (concat (getenv "JDTLS_PATH") "/share/java/")))) (defun lsp-java ()) (defun lsp-java--ls-command () (message (concat (getenv "JDTLS_PATH") "/share/java/")) (list (concat (getenv "JDTLS_PATH") "/bin/jdt-language-server") "-configuration" (concat (getenv "HOME") "/.jdtls/config_linux") "-data" (concat (getenv "HOME") "/.jdtls/java-workspace"))) :mode ("\\.java\\'" . java-mode) :hook ((envrc-mode . lsp-envrc-mode-setup) (java-ts-mode . lsp-deferred))) #+end_src #+begin_src emacs-lisp (use-package lsp-sonarlint :straight (lsp-sonarlint :type git :host nil :repo "https://git.sr.ht/~magic_rb/lsp-sonarlint") :config (require 'lsp-sonarlint-java-ts) (set-variable 'lsp-sonarlint-java-ts-enabled t) (set-variable 'lsp-sonarlint-java-program "java17")) #+end_src