但行好事  莫问前程

cmd下运行javac编译报错: 编码GBK的不可映射字符

一. 问题描述

eclipse中能正常运行的代码,在cmd窗口用javac编译时提示“错误: 编码GBK的不可映射字符”,报错信息如下所示:

二. 解决方案

eclipse下能够正常运行的原因是由于已经设置eclipse使用的文件编码是UTF-8,而Windows平台下简体中文默认使用GBK编码,而文件的编码是UTF-8,所以会报错,使用Editplus打开文件查看编码如下所示:

解决方法有两种,第一种是直接修改文件的编码,第二种是运行javac编译源码的时候指定编译使用的编码。

第一种:直接修改文件的编码
打开文件之后点击菜单File——>Save as,在弹出的对话框的最下面就是当前文件的编码,更改编码为ANSI之后保存并覆盖原文件就相当于修改了此文件的编码,如下图所示:

再次执行javac编译命令,问题已经消失。

第二种:运行javac源码的时候指定编译使用的编码
在执行javac编译的时候指定编码-encoding utf-8,完整命令如下所示:

javac -encoding utf-8 文件
打赏
欢迎关注人生设计师的微信公众账号
公众号ID:longjiazuoA

未经允许不得转载:人生设计师 » cmd下运行javac编译报错: 编码GBK的不可映射字符

分享到:更多 ()

人生设计师-接受不同的声音

联系我关于我