Package Control 安装失败主因是网络问题而非脚本错误,国内无法直连 packagecontrol.io,推荐手动下载 .sublime-package 文件放入对应 Installed Packages/ 目录并重启软件。

Package Control 安装失败,不是脚本写错了,而是卡在证书验证或域名解析上——国内网络环境下,https://packagecontrol.io 基本不可直连,直接运行官方一键安装命令大概率静默失败或报 CertificateError、URLError。
执行适配后的安装命令(ST4 优先用)
Sublime Text 4 用户请直接在控制台(Ctrl+`)中粘贴并回车:
import urllib.request,os,hashlib; exec(urllib.request.urlopen('https://packagecontrol.io/Package%20Control.sublime-package'))
这行已预替换为最新证书信任链和可用域名,跳过系统默认 SSL 校验。若仍超时或报错,说明网络层被拦截(如企业防火墙、校园网),不建议反复重试或修改 urllib 参数。
- 不要手动改脚本里的 URL 或加
context参数——ST4 的 Python 环境对自定义 SSL 上下文支持不稳定 - 如果控制台只显示
reloading plugin但无后续,代表加载未完成,不是成功 - 执行后需等待 5–10 秒,期间别关控制台;成功标志是后续能调出
Package Control: List Packages
手动下载 .sublime-package 文件并放入 Installed Packages/
这是最可靠的方式,绕过所有网络校验环节。关键点只有一个:路径必须精准,且不能放错目录。
- 下载地址:
https://packagecontrol.io/Package%20Control.sublime-package(浏览器直接打开下载) - Windows 路径:
%APPDATA%\Sublime Text 4\Installed Packages\(注意不是Packages\) - macOS 路径:
~/Library/Application Support/Sublime Text 4/Installed Packages/ - Linux 路径:
~/.config/sublime-text-4/Installed Packages/ - 文件名必须是
Package Control.sublime-package(空格不能省,大小写敏感) - 放完后必须重启 Sublime Text,否则不会加载
验证 Package Control 是否真正生效
菜单里看到 “Package Control” 选项 ≠ 它在工作。很多用户卡在这一步,以为装好了,其实只是 UI 残留。
- 按
Ctrl+Shift+P打开命令面板,输入Package Control,必须出现Package Control: Install Package这一行 - 选中它,左下角应显示
Fetching list of available packages...(首次可能要 5–10 秒) - 如果卡在“Loading…”、闪退、或什么也不显示,说明底层模块没加载,不是插件列表慢,是根本没通
- 检查控制台(
Ctrl+`)有无ImportError或no module named package_control类错误 - 旧版残留干扰常见:进
Installed Packages/目录,删掉所有含Package Control字样的文件再重试
装完仍无法安装插件?检查 ignored_packages 和 Python 兼容性
即使 Package Control 加载成功,插件也可能被静默屏蔽,或因 Python 版本不匹配而初始化失败。
- 打开
Preferences → Settings,右侧用户配置中检查是否有"ignored_packages"字段,如果值里包含"Package Control",把它删掉 - ST4 使用 Python 3.8+,部分老插件(尤其是 ST3 时代写的)依赖
urllib2或httplib,会在控制台报NameError,这类插件需找更新版或换替代方案 - 公司/校园网常屏蔽
packagecontrol.io域名,临时切手机热点测试,确认是否纯网络策略问题 - 杀毒软件或 Windows Defender 可能拦截
.sublime-package文件加载,观察是否弹窗提示“已阻止运行”
最易被忽略的一点:Package Control 的“安装插件”功能本质是发起 HTTPS 请求并解压远程 ZIP,它不校验证书,但依赖系统 DNS 和 TLS 栈。你看到的“没反应”,90% 是请求发不出去,而不是代码坏了。手动放文件进 Installed Packages/ 是唯一不依赖运行时网络的兜底方式。











