我正在使用ant 1.6.2 ...我想为StripLineBreaks提供参数(实际上,我想删除文本中的任何\ r \ n,但不是\ n。
所以,我尝试过(在build.xml文件中)
<copy file="a" todir="/tmp/work>
<filterchain>
<filterreader classname="org.apache.tools.ant.filters.StripLineBreaks>
<param name="linebreaks" value="\r"/>
</filterreader>
</filterchain>
</copy>
使用上面的条带所有字母“r”(例如,“jar”变成“ja”)
我试过“\ r”,“\\ r”和“\\ r”
我无法将ant升级到更高版本。
非常感谢帮助。
答案 0 :(得分:2)
为了回答所写的问题,StripLineBreaks按字面意思使用XML中的值,因此指定“\ r”只意味着\和r。而是使用XML字符引用对CR进行编码:
<copy file="a" todir="/tmp/work">
<filterreader classname="org.apache.tools.ant.filters.StripLineBreaks">
<param name="linebreaks" value=" "/>
</filterreader>
</copy>
当然,直接使用fixcrlf任务更容易:
<fixcrlf file="a.xml" destdir="/tmp/work" eol="lf"/>