<propertyfile file="${build.dir}/MyProperties.properties">
<entry key="releaseInformation"
type="string"
value="${build.time}"/>
</propertyfile>
当Ant将我的属性文件复制到bin目录时,其中有一个属性类似于“samplePathName = C \:\ Users \ SomeUser \”的属性。但原始文件中的属性是“samplePathName = C:\ Users \ SomeUser \”。额外的反斜杠怎么会在那里结束?我没有看到任何可能导致这种情况发生的事情。除了仅包含(相关)上述行的build.xml之外,我应该从哪里开始查看?
答案 0 :(得分:0)
这是一个常见问题 - 属性文件的格式由Sun (Oracle)定义。 Ant符合这一点,这就是逃逸发生的原因。使用propertyfile
任务无法解决这个问题 - 这就是它的工作方式。如果该文件确实是一个Java属性文件,那么它应该无关紧要 - 在读取文件时应该正确处理转义。
但是,如果您希望使用propertyfile
来编写一个名称 - 值配置文件,而该文件是其他东西 - 不需要转义 - 您需要采用不同的方法。正如answer to a related question中所述 - 您可以使用Ant replace
或replaceregexp
任务。