VSCode怎么运行Elixir代码_VSCode配置Elixir开发环境

云杰大大_6712

云杰大大_6712

2026-06-12

783人浏览

原创

vscode本身不运行elixir代码,仅通过elixirls调用本地elixir和mix命令;需在集成终端验证elixir≥1.14、erl≥25.0、mix.exs存在且已执行mix deps.get,调试必须配置type: "mix_task",仅保留pguyot.erlang和elixir-lsp.elixir-ls扩展。

vscode怎么运行elixir代码_vscode配置elixir开发环境

VSCode 本身不运行 Elixir 代码,它只通过 ElixirLS 调用你本地已安装的 elixir 和 mix 命令来编译、测试或启动任务——所以“运行代码”本质是配置好环境后触发 mix 任务。

elixir --version 和 erl -version 在 VSCode 终端里必须能跑通

很多人卡在“点运行没反应”,其实是 VSCode 没继承 shell 的 PATH。系统终端能跑 ≠ VSCode 内置终端能跑。

  • 打开 VSCode,按 Ctrl+` 调出集成终端
  • 执行 elixir --version → 必须输出 ≥1.14 的版本号
  • 执行 erl -version → 必须输出 ≥25.0 的 OTP 版本(如 Erlang/OTP 26)
  • 执行 which elixir 和 which erl → 两者都得返回真实路径,不能是 command not found
  • Mac 用户用 asdf:检查 asdf current erlang 和 asdf current elixir 是否生效;Windows 用户注意 PowerShell 下是否把 erl.exe 所在目录加进了 $env:PATH

项目根目录必须有 mix.exs,且已执行 mix deps.get

ElixirLS 不是全局语言服务,它只在检测到 mix.exs 的目录里才拉起完整服务器。没有它,连语法高亮都可能降级。

VSCode
VSCode

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

下载
  • 别用 VSCode 打开 lib/ 或 test/ 子目录——必须 cd 到含 mix.exs 的根目录,再执行 code .
  • 新建项目请用 mix new my_app,别手动建空文件夹写 mix.exs —— 缺 .formatter.exs 或 config/ 结构会导致 mix format 失败
  • Umbrella 或 Phoenix 项目,必须打开顶层根目录(含顶层 mix.exs),不是某个 apps/my_app 子目录
  • 执行过 mix deps.get 才算真正就位;否则 ElixirLS 卡在 “Starting ElixirLS…”,去 Output → ElixirLS 面板看第一行报错,大概率是依赖缺失或 config/config.exs 语法错

调试必须用 type: "mix_task",不能直接运行 .ex 文件

Elixir 没有“单文件运行”概念,所有可执行入口都是 mix 任务。VSCode 的调试器只认 type: "mix_task" 配置。

  • 在项目根目录下创建 .vscode/launch.json,内容至少包含:
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "mix_task",
      "name": "mix test",
      "request": "launch",
      "task": "test",
      "taskArgs": ["--trace"]
    }
  ]
}
  • task 字段必须是合法 mix 子命令(如 test、phx.server、run),不能填 lib/my_module.ex
  • 断点只在 lib/ 和 test/ 下生效;mix.exs 或 config/ 里打断点不会命中
  • Phoenix 项目调试需额外确保 .eex 和 .leex 文件关联为 elixir 类型,否则模板里无法跳转或补全
  • 只保留 pguyot.erlang 和 elixir-lsp.elixir-ls 两个扩展

    第三方打包版或名字近似的插件(比如 “Elixir for VSCode”)往往硬编码旧路径、不支持调试、甚至和官方 ElixirLS 冲突。

    • Erlang 支持:只装 pguyot.erlang(图标是黄色齿轮,作者 pguyot)
    • Elixir 支持:只装 elixir-lsp.elixir-ls(GitHub 仓库 elixir-lsp/elixir-ls,作者 Jake Beacher)
    • 装完必须重启 VSCode;首次打开 .ex 文件时若弹出“允许运行未签名的扩展”,务必点 Allow,否则进程被拦截,状态栏显示 ElixirLS: not connected
    • 别同时启用 erlang-ls 或旧版 vs-elixir,冲突会导致跳转失效、hover 不出类型

    最容易被忽略的是:VSCode 启动上下文和项目结构绑定极紧。哪怕 elixir 和 erl 版本都对,只要打开方式不对(比如从子目录启动)、mix.exs 缺失或 mix deps.get 没跑,整个语言服务就只是个空壳。

    相关文章

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

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

    下载

    相关标签:

    vscode

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

    相关专题

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

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

    2023.06.30

    1395

    18

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

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

    2023.07.21

    2952

    3

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

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

    2024.03.14

    1989

    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

    1838

    14

    vscode用途介绍
    vscode用途介绍

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

    2024.03.15

    1262

    10

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

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

    2024.03.15

    1116

    8

    vscode设置中文界面不生效解决方法
    vscode设置中文界面不生效解决方法

    vscode设置中文界面不生效解决方法:安装中文语言包、通过命令面板设置语言、检查 locale.json 设置、重新安装中文语言包、检查 VSCode 版本和更新、排除插件冲突、检查系统语言设置、查看 VSCode 日志和错误消息、重置 VSCode 设置、查看官方文档和社区支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

    2024.03.15

    494

    5

    热门下载

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

    精品课程

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