VSCode如何运行Erlang代码 VSCode配置Erlang开发步骤

阿宇大大_4881

阿宇大大_4881

2026-04-30

741人浏览

原创

erl命令在vscode终端不可用导致所有erlang插件功能失效,根本原因是环境变量path未正确继承;需通过code .启动或配置shell文件确保path生效,并显式设置erlang.erlpath和erlang.rebar3path为绝对路径,重启vscode后验证erlang-ls: ready状态。

vscode如何运行erlang代码 vscode配置erlang开发步骤

erl命令在VSCode终端里跑不通,所有功能都失效

VSCode的Erlang插件(如erlang-ls)不读系统PATH,它依赖终端能直接执行erl和rebar3。如果内置终端里which erl返回空,跳转、补全、调试按钮全灰——这不是插件坏了,是环境没接上。

验证方式:按 Ctrl+` 打开VSCode内置终端,运行:

which erl
which rebar3

若任一命令报command not found,立刻停手,别改插件设置。解决路径继承问题才是关键:

  • 在已配置好PATH的终端中执行code .启动VSCode(而非桌面图标)
  • Linux/macOS:把export PATH="/path/to/erlang/bin:$PATH"加进~/.zshrc或~/.bashrc,然后完全退出VSCode再重开
  • Windows:确保erl.exe路径不含中文或空格;若用asdf,先运行asdf reshim erlang

erlang.erlPath和erlang.rebar3Path必须填绝对路径

即使which erl有输出,erlang-ls语言服务器仍可能启动失败——它默认忽略PATH,只认你手动填的绝对路径。

打开VSCode设置(Cmd+, ),搜索并填写:

  • erlang.erlPath → 填/usr/local/lib/erlang/bin/erl(macOS/Linux)或C:\Program Files\erl-25.3\bin\erl.exe(Windows)
  • erlang.rebar3Path → 填rebar3可执行文件本体,不是rebar3.bat,也不是软链接(比如/home/you/.local/bin/rebar3)

改完必须彻底重启VSCode,否则语言服务器不会重载。验证:打开任意.erl文件,右下角状态栏应显示erlang-ls: ready。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载

调试前application:start/1必须能在shell里手动跑通

VSCode调试器本质是启动一个带调试参数的Erlang节点,然后attach上去。如果连application:start(myapp)都返回{error,{not_started,other_dep}},说明依赖没拉起,调试配置写得再对也白搭。

实操建议:

  • 先在VSCode终端里运行rebar3 shell,进入带项目路径的Erlang shell
  • 手动执行application:ensure_all_started(myapp).,确认无报错
  • 若失败,检查rebar.config是否声明了deps,以及myapp.app.src里的applications列表是否完整
  • 只有这一步通过,再配launch.json才有效

launch.json里request: launch和attach的区别很关键

选错request类型会导致调试器卡住或连接拒绝。两种模式用途完全不同:

  • "request": "launch":VSCode自己启动一个新Erlang节点,适合单模块快速验证,但无法观察OTP进程树全貌
  • "request": "attach":连接一个已运行的节点(比如iex --name debug@localhost --cookie my_cookie -S mix),适合调试真实OTP应用和分布式行为

常见错误:

  • 用launch方式却没配startFun和startArgs,节点启动后立即退出
  • 用attach方式但cookie或hostName与目标节点不一致,报Node is not responding
  • 调试Elixir项目时,erlang.rebar3Path被误设为mix路径——这是错的,mix不参与erlang-ls的语言服务

真正容易被忽略的是:erlang-ls只管Erlang代码,而Elixir项目需靠ElixirLS驱动;两者路径不能混用,elixirLS.erlangPath和elixirLS.elixirPath必须单独配置且指向正确二进制。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

vscode

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
erlang语言是什么
erlang语言是什么

erlang是一种并发、容错、分布式和动态类型的编程语言。它专门用于构建并发系统,并提供了一个轻量级进程模型来实现并发性。想了解更多erlang的相关内容,可以阅读本专题下面的文章。

2024.06.19

1358

9

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1315

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2772

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1949

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1727

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2607

12

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1818

14

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1242

10

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1116

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程