在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:使用 asdf 或 kiex 安装和管理 Elixir 版本
- Windows:可使用 Windows Subsystem for Linux (WSL),然后按 Linux 方式配置
安装完成后,在终端运行以下命令验证:
elixir -v erl mix phx.new --help
如果能看到版本信息和帮助说明,表示安装成功。
安装 VS Code 扩展
打开 VS Code,进入扩展商店(快捷键 Ctrl+Shift+X),搜索并安装以下关键扩展:
-
ElixirLS: Elixir sup
port 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浏览器在线体验版网址
如何用景安虚拟主机手机版绑定域名建站?


port and debugger – 提供语言服务器功能,包括代码补全、跳转定义、查找引用、调试支持等