debugger插件装不上需先确认package control是否就绪:按ctrl+shift+p输入“package control: list packages”,若为空或报错则说明未生效,应执行官方安装脚本或检查代理配置;装好后搜debugger应见相关命令,菜单出现debug项,否则重启sublime。

Debugger 插件装不上?先确认 Package Control 是否真就绪
Debugger 插件根本不会出现在 Package Control 列表里,大概率不是它没更新,而是 Package Control 自己没跑起来。别急着重装,先按 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(Mac),输入 Package Control: List Packages 回车——如果弹出空列表或报错,说明 Package Control 没生效。
这时打开 Sublime 控制台(Ctrl+`),粘贴官方安装脚本执行一次;或者检查 Preferences → Package Settings → Package Control → Settings 里有没有异常配置。常见坑是代理或防火墙拦截了 GitHub API 请求,导致插件源加载失败。
装成功后,命令面板搜 Debugger 应该能直接看到 Debugger: Toggle Breakpoint 等选项,菜单栏也会多出 Debug 项。没出现?重启 Sublime 再试,别跳过这步。
launch.json 里 program 和 cwd 写错,断点全变灰色
断点设上了但点不亮、F5 后毫无反应,90% 是 launch.json 里两个字段配错了:program 和 cwd 必须严格匹配当前文件的运行上下文。
-
program必须是"${file}"(带双引号、带花括号),不能写成$file、${file_path}或漏引号 -
cwd必须是"${fileDirname}",否则import相对模块或open("config.json")会直接报ModuleNotFoundError或FileNotFoundError - 如果用 virtualenv,
python字段得填绝对路径,比如/home/user/myenv/bin/python,只写python很可能找不到解释器
示例最小可用配置:
{
"configurations": [
{
"type": "python",
"request": "launch",
"name": "Debug Current File",
"program": "${file}",
"console": "integrated",
"cwd": "${fileDirname}",
"python": "/usr/bin/python3"
}
]
}
debugpy 版本不兼容,F5 启动后卡在“waiting for connection”
Debugger 插件本身不执行代码,它只是监听端口,等 debugpy 主动连进来。所以 F5 按下去没反应,不是插件坏了,而是后端没启动或版本不对。
Python 3.14.2是Python编程语言在2025年12月5日发布的稳定版本,属于3.14系列的第二个维护更新。该版本包含了18项修复,重点解决了多进程、数据类及正则表达式等模块的回归问题,并修复了CVE-2025-12084等安全漏洞。此版本标志着自由线程模式(移除GIL)正式获得官方支持,是Python发展的重要里程碑。
2026 年稳定组合是:debugpy==1.6.7。别装 debugpy>=1.8——新协议和旧版 Debugger 插件握手失败,控制台会报 Protocol mismatch。
验证方式:终端进项目目录,运行 python -m debugpy --listen 5678 --wait-for-client test.py,再按 F5。如果连上了,说明是配置问题;如果还是连不上,检查 debugpy 是否真装在当前 Python 环境里(python -c "import debugpy; print(debugpy.__version__)")。
顺带一提:Windows 用户注意,Sublime 默认不继承 shell 的 PATH,所以 python 命令可能根本找不到,必须显式写绝对路径。
断点能设、也能命中,但变量显示 undefined?检查解释器路径和 import 路径
断点停住了,堆栈也对,但变量窗里全是 undefined,或者 locals() 为空——这通常不是 Debugger 的锅,而是 Python 解释器启动时没正确加载模块上下文。
重点查三处:
-
python字段是否指向你真正想调试的那个解释器(比如 conda 环境里的,不是系统全局的) -
cwd是否和sys.path[0]一致?可在代码开头加import sys; print(sys.path)对比 - 如果项目结构含
src/或app/子目录,且用了from utils import helper,确保cwd设在能 import 到utils的层级,必要时加"env": {"PYTHONPATH": "${fileDirname}/.."}
复杂包结构下,debugpy 启动时的工作目录和 import 路径稍有偏差,变量作用域就全乱了。这不是 bug,是 Python 导入机制本身的约束。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!










