看起来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文件的声明编码?我错过了什么吗?
答案 0 :(得分:1)
有人可能会认为它应该遵循xml编码,但是如果你看一下the documentation,就会说明
encoding:要使用的编码,默认为“”;本地系统编码。自Ant 1.7
因此,如果您的默认系统编码不是UFT-8,则可能是问题所在。