适合:windows 用户、maven 编译项目时终端或 idea 出现中文乱码的人群
错误示例:
[warning] δ�� -source 8 һ������������·��
或者中文输出成一堆“乱码方块”。
一、为什么会出现乱码
这是因为:
- windows 控制台默认编码是 gbk
- maven(和 java)输出使用 utf-8 编码
两者不一致,中文显示就变成了乱码。
简单说:
maven 说中文 → windows 听不懂。
二、快速解决方法
方法 1:临时解决(命令行直接改编码)
每次运行 maven 前执行这条命令:
chcp 65001
然后再执行:
mvn clean package
作用:把当前 cmd 窗口改成 utf-8 编码。
优点:立刻生效,不改配置。
缺点:每次都要手动执行。
方法 2:永久解决(配置 maven 启动参数)
让 maven 永远以 utf-8 运行。
① 打开 maven 安装目录
路径一般是:
d:\apache-maven-3.6.3\bin\mvn.cmd
② 在文件顶部加一行:
set maven_opts=-dfile.encoding=utf-8
保存后关闭。
③ 验证是否生效:
mvn -v
如果没有乱码,说明成功。
方法 3:idea 用户设置(推荐)
如果你是在 intellij idea 中运行 maven 构建:
打开:file → settings → build, execution, deployment → build tools → maven → runner
在 vm options 输入框中添加:
-dfile.encoding=utf-8
再打开:file → settings → editor → file encodings
全部设置为 utf-8
取消 “transparent native-to-ascii conversion”
方法 4:全局永久生效(推荐高级玩家)
如果你希望任何时候打开命令行 maven 都是 utf-8:
在用户目录(c:\users\<你的用户名>\)下创建一个文件:
mavenrc_pre.bat
写入内容:
chcp 65001 >nul set maven_opts=-dfile.encoding=utf-8
保存后重启命令行即可。
三、可选进阶:防止 xml 文件乱码
有时候 maven 的中文乱码是因为配置文件(如 settings.xml 或 pom.xml)编码不正确。
确保它们都是 utf-8 无 bom 格式保存:
vs code:
右下角点击编码 → “另存为编码” → 选择 utf-8
notepad++:
菜单栏「编码」→「转换为 utf-8(无 bom)」→ 保存
四、总结表格
| 场景 | 原因 | 解决方案 |
|---|---|---|
| 命令行乱码 | 控制台是 gbk | chcp 65001 |
| maven 报乱码 | 输出编码非 utf-8 | set maven_opts=-dfile.encoding=utf-8 |
| idea 编译乱码 | idea 未设 utf-8 | idea → settings → file encoding → utf-8 |
| settings.xml 报错 | 文件含 bom 或全角空格 | 改为 utf-8(无 bom)保存 |
结语
中文乱码看起来吓人,其实都是 编码不匹配 导致的。
一句话记住:
让系统、maven、idea 一起说 utf-8,世界就清净了。
到此这篇关于maven编译时出现中文乱码的完整解决教程的文章就介绍到这了,更多相关maven编译出现中文乱码解决方法内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论