校验失败主因是脚本过期或混入不可见字符,应从packagecontrol.io复制最新安装脚本;离线安装须将package control.sublime-package放入installed packages/而非packages/目录,并完全退出后重启。

Package Control 控制台执行脚本后提示 “Error validating download”
这是最典型的校验失败,不是网络没连上,而是下载下来的文件哈希值和脚本里预设的 h 不一致。原因基本就两个:脚本过期、或你粘贴时混入了不可见字符(比如从网页截图、PDF 或某些编辑器复制过来的空格/全角标点)。
解决方法很简单:
- 务必打开 packagecontrol.io/installation 页面,只复制“Manual Installation”区块中当前显示的完整
import urllib.request,os,hashlib;脚本 - 在 Sublime 中按
Ctrl + `(Windows/Linux)或Cmd + `(macOS)调出控制台,整段粘贴、不增不减、直接回车 - 执行后若输出
Error validating download (got xxx instead of yyy),说明哈希不匹配——别改脚本,换新脚本重试
手动下载 Package Control.sublime-package 文件后仍不生效
文件放错位置是离线安装失败的头号原因。Sublime 不会扫描 Packages/ 目录下的 .sublime-package 文件,它只认 Installed Packages/ 目录。
确认路径是否正确:
- 在 Sublime 控制台运行
print(sublime.installed_packages_path()),看返回的真实路径 - 把下载好的
Package Control.sublime-package文件,直接丢进这个路径下的Installed Packages/文件夹(不是Packages/,也不是Packages/User/) - 必须完全退出 Sublime(不是关闭窗口,是右键任务栏图标选「退出」或 macOS 菜单栏选「Quit」),再重新启动
手动安装插件包(.sublime-package)后命令不出现
手动装插件 ≠ 把文件丢进 Installed Packages/ 就完事。Package Control 本身要先正常加载,才能触发插件的注册逻辑。如果 Package Control: Install Package 命令都搜不到,说明 Package Control 没跑起来,此时手动丢插件包进去是无效的。
优先验证 Package Control 是否已就位:
- 重启后按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS),输入Package Control,看有没有命令列表弹出 - 如果没有,先回到上一步,确保
Package Control.sublime-package已正确放入Installed Packages/并重启 - 如果有,再手动安装插件:把插件的
.sublime-package文件(比如EmmyLua.sublime-package)同样放进Installed Packages/,重启即可
国内网络环境下手动安装仍卡在 SSL 或超时
旧版 Sublime(尤其是 ST3 Build https://packagecontrol.io 都会握手失败,表现为控制台空白、无报错、也无下载进度。
绕过方式有限但有效:
- 升级到 Sublime Text 4 —— 这是最彻底的解法,ST4 内置 Python 完全支持 TLS 1.2+
- 临时改用 HTTP 协议(仅限调试):把官方脚本里的
https://packagecontrol.io/替成http://packagecontrol.io/(注意是http,不是https),但部分镜像源可能不支持 HTTP - 修改系统
hosts:添加50.116.34.243 packagecontrol.io和50.116.34.243 sublime.wbond.net,可绕过 DNS 污染
手动安装的本质是跳过自动发现环节,但无法绕过 SSL 握手和模块加载这两关。路径、重启、版本,三者缺一不可。









