ElixirLS运行提示OTP无EEP48文档,功能受限求助
解决ElixirLS的OTP EEP48文档块缺失与Elixir源码找不到问题
1. 修复OTP无EEP48文档块问题
用asdf安装Erlang时默认未开启EEP48文档块支持,需重新编译Erlang:
- 卸载当前OTP 25版本:
asdf uninstall erlang 25.x.x # 替换为你实际使用的OTP 25子版本 - 设置编译选项,启用文档块支持:
export ERLANG_CONFIGURE_OPTIONS="--with-docs" - 重新安装OTP 25:
asdf install erlang 25.x.x - 将其设为全局或项目本地默认版本:
asdf global erlang 25.x.x # 或仅针对当前项目设置 asdf local erlang 25.x.x
2. 修复Elixir源码找不到问题
ElixirLS依赖Elixir源码实现代码导航,asdf默认安装可能不保留源码,按以下步骤处理:
- 卸载当前Elixir版本:
asdf uninstall elixir 1.14.2-otp-25 - 带源码重新安装Elixir:
asdf install elixir 1.14.2-otp-25 --with-source - 若ElixirLS仍无法识别源码,手动指定源码路径(替换为你的实际安装路径):
配置完成后重启编辑器与ElixirLS即可。export ELIXIRLS_ELIXIR_SOURCE_PATH="$HOME/.asdf/installs/elixir/1.14.2-otp-25/lib/elixir"
验证效果
重启编辑器后查看ElixirLS日志,原错误提示应消失,代码导航与Erlang模块的语言功能将恢复正常。
内容的提问来源于stack exchange,提问作者Veljko
相关产品推荐
相关产品推荐

