ant xmlbean 任务行为不同于 Oracle HotSpot 和 IBM J9

ant xmlbean task behavior differs from Oracle HotSpot to IBM J9

我的 ant xmlbean 任务在 HotSpot 1.8 下工作正常但在 IBM J9 下失败并出现异常 IO Error java.nio.charset.UnmappableCharacterException: Input length = 1

我该如何解决?

这是我的蚂蚁任务:

<target name="gen">
 <taskdef name="xmlbean" classname="org.apache.xmlbeans.impl.tool.XMLBean" classpathref="cpth" />
 <xmlbean destfile="./ttt.jar"
          classpathref="cpth">
      <fileset dir="C:\projects\whatever" includes="1.xsd 2.xsd conf.xsdconfig"/>
 </xmlbean>
</target>

XSD 个文件包含德语变音符号(字母如 ä、ü)。我尝试用UTF-8和iso-8859-1保存文件,但结果是一样的。

好吧,如果我使用 -Dfile.encoding=... 提供正确的文件编码,它就可以工作。我仍然不明白为什么没有这个选项它不适用于变音符号但适用于俄语字母,但无论如何...... 为 Ant 指定此选项的最佳方法是使用 ANT_OPTS 环境变量。