How do I set -Dfile.encoding within ant's build.xml?
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:
- add
-Dfile.encoding=iso-8859-1
to yourANT_OPTS
environment variable - use
<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 itself cannot set system properties, but if you really want to, you can write a java program which sets the system property, and execute that from within Ant.