code runner插件需手动配置环境才能运行代码:必须先在终端验证python3--version、gcc--version等命令可用,再修改executormap指定绝对路径,启用runinterminal支持输入与中文输出,并确保工作目录和变量拼写准确。

装完 Code Runner 插件不等于能跑代码——它不带任何解释器或编译器,只负责把命令扔进终端。你本地终端里 python3 --version、gcc --version、javac -version 都敲不出来,插件就一定没反应。
为什么点 Run Code 没输出、报 command not found
Code Runner 不是“执行器”,是“命令转发器”。它调用的每一个命令,都必须能在 VSCode 内置终端中直接执行。
- 在 VSCode 终端里手动运行
python3 --version(别试python,macOS/Linux 新系统默认没软链) -
gcc --version或g++ --version—— Windows 用户确认用的是 TDM-GCC 或 MinGW-w64,且路径不含中文或空格(如C:Program Files会崩) -
javac -version和java -version都得有;只配java不行,没javac就没法编译 -
go version要成功,且注意go run $fileName要求当前目录有go.mod,否则报no Go files in current directory
怎么改 code-runner.executorMap 让 Python/C++/Java 真正跑起来
默认配置只适用于教科书环境:单文件、无虚拟环境、无包结构、路径干净。现实里几乎全不满足,必须改 JSON。
- Python 用虚拟环境?把
"python": "python -u"改成绝对路径:"python": "/Users/you/project/.venv/bin/python -u"(macOS/Linux)或"python": "C:\Users\you\project\.venv\Scripts\python.exe -u"(Windows) - C++ 在 Windows 上记得加
.exe后缀:"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && ./$fileNameWithoutExt.exe" - Java 有
package com.example;?默认java $fileNameWithoutExt必然失败。
得写成:"java": "cd $dir && javac $fileName && java $fileNameWithoutExt",并确保文件真在com/example/目录下 - 所有变量大小写和拼写必须严格匹配:
$dir不是$DIR,$fileNameWithoutExt少个o就变空字符串,命令直接语法错误
终端一闪而过、中文乱码、input() 卡死怎么办
Code Runner 默认用非交互式 shell 执行,stdout 直接捕获进 OUTPUT 面板——这个面板不继承终端编码,也不支持 stdin 输入。
- 必须设
code-runner.runInTerminal为true,让代码真正在集成终端里跑 - 顺手设
code-runner.preserveFocus为false,否则焦点不跳过去,你甚至不知道它跑过了 - Python 用户别删掉
-u参数——禁用输出缓冲,否则循环打印日志会“卡住” - Windows 用户若用 PowerShell 作默认终端,可能因执行策略卡住;建议切回
cmd,或在设置里清空code-runner.terminalRoot
真正麻烦的从来不是支持多少语言,而是每种语言背后依赖的工具链版本、路径、环境变量、工作目录——这些 Code Runner 一个都不管,它只等你把命令写对、路径配准、终端开好。











