From b15821558707d732c88793cda52db392da19d198 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Thu, 15 Apr 2021 11:17:44 -0400 Subject: [PATCH] lang/java: fail meghanada-mode gracefully if java is absent --- modules/lang/java/+meghanada.el | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules/lang/java/+meghanada.el b/modules/lang/java/+meghanada.el index cac7aff22..dd14aa72c 100644 --- a/modules/lang/java/+meghanada.el +++ b/modules/lang/java/+meghanada.el @@ -9,11 +9,20 @@ meghanada-use-flycheck (featurep! :checkers syntax) meghanada-use-eldoc t meghanada-use-auto-start t) + :config (set-lookup-handlers! 'java-mode :definition #'meghanada-jump-declaration :references #'meghanada-reference) + (defadvice! +java-meghanada-fail-gracefully-a (orig-fn &rest args) + "Toggle `meghanada-mode'. Fail gracefully if java is unavailable." + :around #'meghanada-mode + (if (executable-find meghanada-java-path) + (apply orig-fn args) + (message "Can't find %S binary. Is java installed? Aborting `meghanada-mode'." + meghanada-java-path))) + (map! :localleader :map java-mode-map (:prefix ("r" . "refactor")