开发者

Maven编译时出现中文乱码的完整解决教程

目录
  • 一、为什么会出现乱码
  •  二、快速解决方法
    • 方法 1:临时解决(命令行直接改编码)
    • 方法 2:永久解决(配置 Maven 启动参数)
    • 方法 3:IDEA 用户设置(推荐)
    • 方法 4:全局永久生效javascript(推荐高级玩家)
  • 三、可选进阶:防止 XML 文件乱码
    • 四、总结表格
      • 结语

        适合:Windows 用户、Maven 编译项目时终端或 IDEA 出现中文乱码的人群

        错误示例:

        [WARNING] δ�� -source 8 ������������·��

        或者中文输出成一堆“android乱码方块”。

        一、为什么会出现乱码

        这是因为:

        • Windows 控制台默认编码是 GBK
        • Maven(和 Java)输出使用 UTF-8 编码

        两者不一致,中文显示就变成了乱码。

        简单说:

        Maven 说中文 → Windows 听不懂。

         二、快速解决方法

        方法 1:临时解决(命令行直接改编码)

        每次运行 Maven 前执行这条命令:

        chcp 65001
        

        然后再执行:

        mvn clean package
        

        作用:把当前 CMD 窗口改成 UTF-8 编码。

        优点:立刻生效,不改配置。

        缺点:每次CQsJY都要手动执行。

        方法 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 的中文乱码是因为配置文件(如 settingsCQsJY.xmlpom.xml)编码不正确。

        确保它们都是 UTF-8 无 BOM 格式保存:

        VS Code:

        右下角点击编码 → “另存为编码” → 选择 UTF-8

        Notepad++:

        菜单栏「编码」→「转换为 UTF-8(无 BOM)」→ 保存

        四、总结表格

        场景原因解决方案
        命令行乱码控制台是 GBKchcp 65001
        Maven 报乱码输出编码非 UTF-8set MAVEN_OPTS=-Dfile.encoding=UTF-8
        IDEA 编译乱码IDEA 未设 UTF-8IDEA → Settings → File Encoding → UTF-8
        settings.xml 报错文件含 BOM 或全角空格改为 UTF-8(无 BOM)保存

        结语

        中文乱码看起来吓人,其实都是 编码不匹配 导致的。

        一句话记住:

        让系统、Maven、IDEA 一起说 UTF-8,世界就清净了。

        到此这篇关于Maven编译时出现中文乱码的完整解决教程的文章就介绍到这了,更多相关Maven编译出现中文乱码解决方法内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

        0

        上一篇:

        下一篇:

        精彩评论

        暂无评论...
        验证码 换一张
        取 消

        最新开发

        开发排行榜