I've got java source files with iso-8859-1 encoding. When I run ant , I get "warning: unmappable character for encoding UTF-8". I can avoid this if I run ant -Dfile.encoding=iso-8859-1 or add encoding="ISO-8859-1" to each javac statement.
Is there a way to set the property globally within build.xml? <property name="file.encoding" value="ISO-8859-1"> does not work. I know that I can add a foo=ISO-8859-1 property and set encoding="${foo}" to each javac statement, but I'm trying to avoid that.
If you've got files encoded in a particular way, it's probably best to tell javac that rather than forcing the whole JVM to use a particular encoding. The javac task has an encoding attribute for this reason.
<javac srcdir="${src.dir}" destdir="${build.classes.dir}" encoding="iso-8859-1" />
But really, you should just convert the source files to UTF-8. Everything tastes better in UTF-8. :)
A few options:
-Dfile.encoding=iso-8859-1
to your ANT_OPTS
environment variable <presetdef>
to setup defaults for all of your <javac>
invocations Before changing build file i am getting java compile error like below.
ApplicationConstant.java:73: error: unmappable character for encoding ascii public static final String INVALID_MDTVERSION_SECOND = " This not compatible with the server’s Version";
I have encounter this error when I used to have ant java target as:
<javac encoding="ascii"...>
Than i have change as below
<javac encoding="iso-8859-1" ...>
This issue got solved.
Ant本身无法设置系统属性,但如果您真的想要,可以编写一个设置系统属性的java程序,并从Ant中执行该程序。
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.