VSCode离线安装中文包失败主因是engines.vscode版本不匹配,需修改.vsix中extension/package.json的engines字段为本地兼容版本(如"^1.90.0"),再重打包安装,并通过Configure Display Language选zh-hans配置locale。

VSCode离线安装中文包失败,90% 是版本不匹配
装不上中文包,基本不是网络或操作问题,而是 MS-CEINTL.vscode-language-pack-zh-hans 的 engines.vscode 字段和你本地 VS Code 版本对不上。VS Code 1.85+ 后强制校验语义化版本,比如你本地是 1.90.2,而包里写的是 "^1.85.0",它就接受;但若写成 "^1.91.0" 或 "1.90.0"(没加 ^),就会静默拒绝加载。
实操建议:
- 运行
code --version,取前两位(如1.90.2→1.90) - 用
unzip -l your.vsix确认包里有extension/package.json - 解压后打开该文件,把
"engines": {"vscode": "xxx"}改成匹配你本地主版本的值(例如"^1.90.0") - 重新打包:Linux/macOS 用
zip -r new.vsix extension/;Windows 别用资源管理器重命名,用 PowerShell 的Compress-Archive或 7-Zip
装完重启还是英文?检查 locale 配置是否写错
VS Code 不会自动把 "zh-cn" 当作有效值,必须用 zh-hans(简体中文)或 zh-hant(繁体)。settings.json 里如果手动写了 "locale": "zh-cn",它会直接忽略这个配置,也不报错——结果就是界面始终英文。
实操建议:
- 删掉 settings.json 中所有手动写的
locale字段 - 按
Ctrl+Shift+P输入Configure Display Language,选zh-hans,它会自动生成正确配置 - Windows 上若系统区域设为英语且启用了 “Beta: Use Unicode UTF-8”,VS Code 可能跳过语言包加载;临时切回“中文(简体,中国)”再试一次
- macOS/Linux 检查终端里
echo $LANG是否为en_US.UTF-8类值,它会覆盖 VS Code 自动探测
离线环境语言包不生效,底层 nls.js 模块可能未启用
中文包不是独立插件,它依赖 VS Code 内置的 vs/nls.js 模块做字符串替换。这个模块在 VS Code ≤1.75 中默认关闭,1.76+ 才默认注入。如果你用的是企业内网统一部署的老版本(比如 1.72.x),哪怕装了最新语言包,也完全不会生效。
实操建议:
- Help → About 里确认版本号,低于
1.76.0就别折腾语言包了,升级 VS Code 是唯一解 - 不要信“兼容补丁”或第三方汉化包——它们没声明
contributes.localizations,VS Code 1.85+ 根本不识别 - 双击桌面快捷方式可能启动旧版残留进程;关掉所有
Code Helper进程,再从开始菜单/应用坞启动新实例
语言包装上了,但部分界面仍是英文?那是扩展自己没适配
VS Code 主界面语言由语言包控制,但插件自己的 UI(比如 Python 插件的设置页、输出面板里的日志文本)是否汉化,取决于插件作者有没有提供 package.nls.json 和对应 contributes.localizations 声明。很多插件(如 ms-python.python、golang.go)至今只提供英文文案。
这不是你装错了,也不是语言包问题,而是插件本身没做国际化。目前没有通用绕过方案,只能等作者更新,或去 GitHub 提 issue。


















