I’m not sure what happened but my Elixir LSP (in emacs) has stopped working ( I haven’t done anything to my .emacs file), it tries to restart with the error:
Server elixir-ls:2340/starting exited (check corresponding stderr buffer for details). Do you want to restart it? (y or n)
but then immediately stops working. I am using Elixir 1.16.0 and Erlang/OTP 26. Checking stderr per the recommendations I’m met with
Running /Users/canaan/.emacs.d/.cache/lsp/elixir-ls/launch.sh
Preffered shell is zsh, relaunching
Looking for ASDF install
ASDF not found
Looking for rtx executable
rtx not found
Installing ElixirLS release v0.16.0
Running in /Users/USER/Desktop/Workbench
Mix.install failed with ** (ArgumentError) unknown keys [:stop_started_applications] in [force: false, start_applications: false, stop_started_applications: false, consolidate_protocols: false], the allowed keys are: [:config, :config_path, :consolidate_protocols, :elixir, :force, :lockfile, :runtime_config, :start_applications, :system_env, :verbose]
(elixir 1.16.0) lib/keyword.ex:359: Keyword.validate!/2
(mix 1.16.0) lib/mix.ex:819: Mix.install/2
/Users/USER/.emacs.d/.cache/lsp/elixir-ls/installer.exs:526: ElixirLS.Installer.install/1
/Users/USER/.emacs.d/.cache/lsp/elixir-ls/installer.exs:543: ElixirLS.Installer.install_with_retry/0
/Users/USER/.emacs.d/.cache/lsp/elixir-ls/quiet_install.exs:14: (file)
(elixir 1.16.0) src/elixir_compiler.erl:67: :elixir_compiler.dispatch/4
(elixir 1.16.0) src/elixir_compiler.erl:52: :elixir_compiler.compile/4
(elixir 1.16.0) src/elixir_compiler.erl:39: :elixir_compiler.maybe_fast_compile/3
I appreciate if anyone has seen this error before and has any solutions. I’ve installed asdf, but it was working just fine before, is there some chance it’s a simple error and I’m not launching the server from the right directory? And if that is the case what is the simple fix?
;; Install required packages if you haven’t already
(use-package lsp-mode
:commands lsp
:ensure t
:diminish lsp-mode
:hook (elixir-mode . lsp)
:init
(add-to-list 'exec-path “~/Desktop/Workbench”))
I have (use-package elixir-mode :ensure t) later in the file. The same error persists, is there anything important about the path that should be changed that isn’t covered in the docs?
I had the same problem, thanks for the solution.
Very strange that emacs insists on using the cache location. I tried deleting the .emacs.d/.cache/lsp/elixir-ls before, and somehow it just pulled the same thing from github into that cache folder-- some version 0.16 of elixir-ls. Good idea to just put an updated build there.