code runner不执行代码,仅调用系统命令;必须先在vscode终端验证python3、g++、javac等命令可直接执行,否则点运行无反应或报command not found,windows路径禁含中文/空格,macos/linux用which确认,改path后需重启vscode。

Code Runner 插件本身不执行代码,只调用你系统里已有的命令——能跑不能跑,全看 python3、g++、javac 这些能不能在 VSCode 终端里直接敲出来。
为什么点 ▶ 没反应,或报 command not found
不是插件坏了,是它根本没“看到”你的解释器或编译器。
- 先在 VSCode 集成终端(
Ctrl+`)里手动试:python3 --version、g++ --version、javac -version—— 任一失败,Code Runner 必挂 - Windows 用户注意:
where python输出路径不能含中文或空格(如C:\Program Files\),否则命令静默失败 - macOS/Linux 用户用
which python3确认路径;如果输出为空,说明没装或没加进PATH - 装完环境或改完
PATH后,必须重启 VSCode,否则新配置不生效
Python 脚本运行卡死、报 ModuleNotFoundError 或输入不了
默认配置假设你用系统 Python、无依赖、不需交互——现实几乎都不满足。
- 用了虚拟环境?必须把
code-runner.executorMap里的python改成绝对路径,例如:"python": "/Users/you/project/venv/bin/python -u" - 脚本里有
input()?必须开启code-runner.runInTerminal(设为true),否则 Output 面板不支持 stdin - 输出“一闪而过”或 print 不显示?
-u参数不能少,它禁用缓冲,否则循环里的print()可能完全不输出 -
import自定义模块失败?检查code-runner.cwd是否设为项目根目录(如"$workspaceRoot"),而不是默认的"$fileDirname"
Java / C++ 编译失败:class not found、g++ not found、No such file or directory
Code Runner 默认只处理单文件、平级目录、无 package、无 include 路径的最简场景。
- Java 报
Could not find or load main class?确保.java文件里public class名和文件名严格一致,并在executorMap中加cd $dir &&切工作目录,例如:"java": "cd $dir && javac $fileName && java $fileNameWithoutExt" - 用了
package com.example;?文件必须放在com/example/子目录下,且命令中cd要退到包根,比如cd $dir/../.. - C++ 报
fatal error: xxx.h: No such file or directory?在命令里显式加-I路径,例如:"cpp": "cd $dir && g++ $fileName -I./include -o $fileNameWithoutExt.out && ./$fileNameWithoutExt.out"
右键没 “Run Code”,或快捷键 Ctrl+Alt+N 失效
Code Runner 不会主动给任意文件加右键菜单,它严格按文件后缀识别语言。
- 文件必须已保存,且扩展名匹配支持列表:如
.py、.java、.cpp——Untitled-1或test.txt永远不会出现运行选项 - 状态栏右下角语言模式必须正确(不能是
Plain Text);可按Ctrl+K M手动切换 - 检查设置项
code-runner.showRunCommandInEditorContextMenuItem是否为true - 若仍无效,执行
Developer: Reload Window(Ctrl+Shift+P输入)强制重载
真正麻烦的从来不是怎么点运行,而是搞清「当前文件到底被当成什么来执行」——是 python script.py,还是 node --eval,抑或 gcc -o tmp && ./tmp。这些细节全藏在 code-runner.executorMap 里,改错一个字符,输出就变成 /bin/sh: 1: python3: not found。











