VSCode运行MATLAB需三步:安装MathWorks官方插件、正确配置matlab.defaultInterpreterPath为可执行文件路径(非安装根目录)、通过tasks.json自动切换工作目录;仅装插件或配错路径将导致“MATLAB not found”或运行无响应。

VSCode 本身不带 MATLAB 运行能力,必须通过插件 + 正确路径配置 + 启动方式组合才能真正运行 .m 脚本。光装插件或只配路径,90% 的人会卡在“点击运行没反应”或“MATLAB not found”错误上。
安装 MathWorks 官方 MATLAB 插件(不是随便一个)
插件来源错误是第一个高频失败点。VSCode 扩展市场搜 MATLAB 会出现多个同名插件,但只有发布者为 MathWorks 的那个才支持直接运行脚本(其他多为语法高亮或旧版语言服务器)。
- 打开扩展面板(
Ctrl+Shift+X或点击左侧图标),搜索MATLAB - 认准作者栏显示
MathWorks,图标是蓝色方块加白色M字母 - 安装后必须重启 VSCode,否则设置项不生效
- 别装
matlab-language-server类插件来替代它——那套需要手动部署二进制文件,且不提供run按钮功能
正确配置 matlab.defaultInterpreterPath(Windows/macOS/Linux 路径差异大)
这个配置项决定 VSCode 能否调起 MATLAB 引擎。填错路径、用错变量名、或路径指向 GUI 版本都会导致静默失败。
- Windows 示例路径:
C:\Program Files\MATLAB\R2023b\bin\matlab.exe(注意双反斜杠) - macOS 示例路径:
/Applications/MATLAB_R2023b.app/bin/matlab(不是.app根目录,必须到bin/下) - Linux 示例路径:
/usr/local/MATLAB/R2023b/bin/matlab - 不要填
matlabroot返回的路径(那是安装根目录),要填可执行文件完整路径 - 在 VSCode 设置中搜
matlab.defaultInterpreterPath,点击“在 settings.json 中编辑”,写成:"matlab.defaultInterpreterPath": "/your/actual/path/to/matlab" - 验证方法:终端里直接运行该路径 +
-help,例如/Applications/MATLAB_R2023b.app/bin/matlab -help,有输出即有效
运行 .m 文件时当前工作目录必须匹配 MATLAB 当前路径
VSCode 不会自动把 MATLAB 的工作目录切到你正在编辑的文件所在位置。这是最常被忽略的“运行成功但结果不对”原因。
- 新建
a.m放在/project/src/utils/下,点击 ▶ 运行,MATLAB 实际仍在启动时的默认路径(如~/Documents) - 脚本里用
load('data.mat')就会报错:找不到文件 - 解决方法只有两种:
– 在 VSCode 终端手动执行cd /project/src/utils,再运行脚本
– 或改用tasks.json自动切换路径(推荐):{ "version": "2.0.0", "tasks": [{ "label": "Run MATLAB Script", "type": "shell", "command": "${config:matlab.defaultInterpreterPath}", "args": [ "-nosplash", "-nodesktop", "-r", "cd('${fileDirname}'); run('${fileBasename}'); exit;" ], "group": "build", "presentation": { "panel": "shared" } }] }
调试和 Notebook 功能需要额外步骤,不能靠插件自动启用
官方 MATLAB 插件默认只支持运行,不带调试器或 Jupyter 内核。想用断点或交互式代码块,得手动搭链路。
- 调试依赖
matlab.engine.shareEngine():必须先在终端启动共享引擎,再在launch.json里指定engineName,否则 F5 直接报错 - Jupyter Notebook 需单独装
matlab-kernel(pip install matlab-kernel),再运行python -m matlab_kernel.install注册内核 - VSCode 内核选择器里看到
MATLAB (local)≠ 已就绪,要测试单元格能出图才算通 - 这些功能对 MATLAB 版本敏感:R2020b 以下不支持
shareEngine,R2022a 以上才稳定支持 notebook 内核
真正卡住人的从来不是“能不能配”,而是路径写错一字符、工作目录没同步、或误以为装了插件就万事大吉。尤其 macOS 用户容易把 .app 路径当可执行路径,Windows 用户常漏掉 .exe 后缀,Linux 用户则可能因权限问题无法执行 matlab 命令——这些细节不验,配置就永远停在“Connected”假象里。


















