在VS Code中配置Elixir和Phoenix开发环境

发布时间 - 2025-12-02 00:00:00    点击率:
首先安装Elixir和Erlang,推荐使用asdf或kiex(macOS/Linux)或WSL(Windows),通过elixir -v和mix phx.new --help验证;接着在VS Code中安装ElixirLS、Syntax Highlighting for Elixir和Phoenix扩展并重启;创建或进入Phoenix项目mix phx.new my_app,执行mix setup初始化数据库;在项目根目录配置.vscode/launch.json以支持调试,包含Mix Task和Phoenix Server启动项;最后通过运行和调试侧边栏启动应用,断点生效,若无提示可重启语言服务器。

在 VS Code 中配置 Elixir 和 Phoenix 开发环境,可以让你高效编写和调试代码。通过合适的插件和工具集成,VS Code 能提供智能补全、语法高亮、格式化支持以及调试能力。

安装 Elixir 和相关工具

确保你的系统中已正确安装 Elixir 和 Erlang。Phoenix 依赖于 Elixir,而 Elixir 又依赖 Erlang/OTP。

推荐使用版本管理工具:

  • macOS / Linux:使用 asdfkiex 安装和管理 Elixir 版本
  • Windows:可使用 Windows Subsystem for Linux (WSL),然后按 Linux 方式配置

安装完成后,在终端运行以下命令验证:

elixir -v
erl
mix phx.new --help

如果能看到版本信息和帮助说明,表示安装成功。

安装 VS Code 扩展

打开 VS Code,进入扩展商店(快捷键 Ctrl+Shift+X),搜索并安装以下关键扩展:

  • ElixirLS: Elixir support and debugger – 提供语言服务器功能,包括代码补全、跳转定义、查找引用、调试支持等
  • vscode-elixir-ls(可选)– 部分用户偏好此版本,但通常推荐使用官方 ElixirLS
  • Syntax Highlighting for Elixir – 增强语法高亮(部分主题下可提升显示效果)
  • Phoenix – 提供 Phoenix 框架相关的 snippets 和模板支持

安装后重启 VS Code,确保扩展正常加载。

配置项目与 Mix 集成

创建或打开一个 Phoenix 项目:

mix phx.new my_app
cd my_app

在项目根目录下启动 VS Code:

code .

ElixirLS 会自动检测 mix.exs 并开始索引项目依赖。首次加载可能需要几秒到几十秒,期间会自动编译依赖以提供准确的代码提示。

确保 config/dev.exs 中数据库配置正确,并执行:

mix setup

这将安装依赖、创建数据库并运行迁移,使项目处于可运行状态。

启用调试功能

ElixirLS 支持通过 launch.json 配置调试会话。

在项目根目录下创建 .vscode/launch.json 文件:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Mix Task",
      "type": "mix_task",
      "request": "launch",
      "projectRoot": "${workspaceFolder}",
      "task": "run",
      "taskArgs": ["--no-halt"]
    },
    {
      "name": "Phoenix Server",
      "type": "mix_task",
      "request": "launch",
      "projectRoot": "${workspaceFolder}",
      "task": "phx.server"
    }
  ]
}

配置完成后,切换到“运行和调试”侧边栏,选择 “Phoenix Server” 启动应用。断点将在控制器、上下文或模型中生效。

基本上就这些。配置完成后,你就能在 VS Code 中流畅开发 Elixir 和 Phoenix 应用了。不复杂但容易忽略的是确保 ElixirLS 正常工作——若无提示,尝试重启语言服务器(命令面板输入 “Elixir: Restart Language Server”)。


# linux  # vscode  # js  # json  # windows  # app  # 工具  # mac  # macos  # erlang  # for  # 数据库  # 重启  # 推荐使用  # 若无  # 的是  # 加载  # 完成后  # 让你  # 你就  # 首次  # 将在 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  利用JavaScript实现拖拽改变元素大小  魔毅自助建站系统:模板定制与SEO优化一键生成指南  香港服务器租用费用高吗?如何避免常见误区?  javascript中的try catch异常捕获机制用法分析  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  Laravel如何保护应用免受CSRF攻击?(原理和示例)  百度浏览器如何管理插件 百度浏览器插件管理方法  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  JavaScript常见的五种数组去重的方式  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何在企业微信快速生成手机电脑官网?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  js实现获取鼠标当前的位置  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  Python数据仓库与ETL构建实战_Airflow调度流程详解  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  高防服务器:AI智能防御DDoS攻击与数据安全保障  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  深入理解Android中的xmlns:tools属性  详解vue.js组件化开发实践  Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】  装修招标网站设计制作流程,装修招标流程?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  详解阿里云nginx服务器多站点的配置  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  ,怎么在广州志愿者网站注册?  WEB开发之注册页面验证码倒计时代码的实现  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Laravel如何处理文件下载请求?(Response示例)  php 三元运算符实例详细介绍  历史网站制作软件,华为如何找回被删除的网站?  Swift中swift中的switch 语句  java中使用zxing批量生成二维码立牌  如何快速上传自定义模板至建站之星?  再谈Python中的字符串与字符编码(推荐)  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  如何利用DOS批处理实现定时关机操作详解  Android滚轮选择时间控件使用详解  太平洋网站制作公司,网络用语太平洋是什么意思?  linux top下的 minerd 木马清除方法  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  Internet Explorer官网直接进入 IE浏览器在线体验版网址  如何用景安虚拟主机手机版绑定域名建站?