echo的ant编码不遵循build.xml设置

时间:2013-10-19 19:36:05

标签: xml encoding ant

看起来ant的echo命令不尊重build.xml的XML编码。

此build.xml输出预期的东西(pi =π):

<?xml version="1.0" encoding="UTF-8"?>
<project default="pi">
 <target name="pi">
  <echo encoding="UTF-8">pi=π</echo>
 </target>
</project>

和这一个(没有echo命令的编码):

<?xml version="1.0" encoding="UTF-8"?>
<project default="pi">
 <target name="pi">
  <echo>pi=π</echo>
 </target>
</project>

输出

  

PI =?

我使用的是设置为UTF-8的mac Terminal.app,文本编辑器也是如此。当然echo命令应该尊重XML文件的声明编码?我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

有人可能会认为它应该遵循xml编码,但是如果你看一下the documentation,就会说明

  

encoding:要使用的编码,默认为“”;本地系统编码。自Ant 1.7

因此,如果您的默认系统编码不是UFT-8,则可能是问题所在。