用ant编译时出现“编码 UTF8 的不可映射字符“

问题描述:

用ant编译时出现“编码 UTF8 的不可映射字符“,这是因为编译的时候编码跟文件存储的编码方式不一样造成的。

若build.xml中的编码格式为UTF-8,<?xml version="1.0" encoding="UTF-8"?>,那么ant用UTF-8编码方式编译源文件,如果源文件是用GBK编码的,那么就会出现“编码 UTF8 的不可映射字符“。

解决方案:
(方法1):

<target name="compile" depends="init" >
    <javac srcdir="${src}" destdir="${dest}">
        <compilerarg line="-encoding GBK "/>  
    </javac>
</target>     

(方法2):修改java文件的编码方式为UTF-8。

你可能感兴趣的:(ant,编码,utf-8,不可映射字符)