Package Control 显示“There are no packages”是因本地缓存的channel_v3.json过期、损坏或为空所致;需执行Package Control: Synchronize Packages强制刷新,或手动删除缓存文件后重试,必要时检查hosts或代理配置。
macOS)打开命令面板
Package Control: Synchronize Packages 并回车(注意不是 “Install Package”)Finished synchronizing packages Package Control: Install Package,列表应正常加载手动清理缓存文件(当同步无效时)
如果上一步没反应或仍为空,说明缓存文件已卡死。sublime Text 的缓存路径因系统而异,但核心文件统一为 channel_v3.json:
- 关闭 sublime text
- 删除以下路径中的
channel_v3.json和channel_v3.json.last-modified文件:
– windows:%appDATA%Sublime TextPackagesUserPackage Control.cache
– macOS:~/Library/Application Support/Sublime Text/Packages/User/Package Control.cache/
– linux:~/.config/sublime-text/Packages/User/Package Control.cache/ - 重启 Sublime Text,再执行一次
Package Control: Synchronize Packages
检查是否被代理或 hosts 干扰了 channel 域名
即使能打开浏览器访问 packagecontrol.io,Sublime 的 python 环境也可能因系统代理或 hosts 规则无法解析该域名:
- 在命令面板中运行
Package Control: Advanced Upgrade Package,选任意已安装包(如Emmet),观察控制台(Ctrl+`)是否报错URLError: - 若报此错,说明 DNS 解析失败;可临时在 hosts 中添加:
104.20.151.17 packagecontrol.io
104.20.150.17 packagecontrol.io - 或者在
Preferences → Package Settings → Package Control → Settings – User中添加代理配置(如使用 http 代理):
{ "http_proxy": "http://127.0.0.1:8080", "https_proxy": "http://127.0.0.1:8080" }
Sublime 的 Package Control 缓存机制很轻量,但一旦出问题就完全静默。真正要留意的是:它不依赖浏览器环境,也不走系统全局代理设置,默认用自带的 urllib,所以网络问题的表现和你日常上网完全不同。