<propertyfile file="${build.dir}/MyProperties.properties">
<entry key="releaseInformation"
type="string"
value="${build.time}"/>
</propertyfile>
当Ant将我的属性文件复制到bin目录时,其中有一个属性,类似于"samplePathName=C:UsersSomeUser"。但从原始文件的属性是"samplePathName=C:UsersSomeUser"。额外的反斜杠是怎么结束的呢?我看不出有什么可能导致这种情况发生。除了只包含(相关)上述行的build.xml之外,我应该从哪里开始查找?
这是一个常见的问题-属性文件的格式是由Sun (Oracle)定义的。Ant符合这一点,这就是为什么会发生逃逸。没有办法绕过这个使用propertyfile
任务-这是它的工作方式。如果该文件确实是一个Java属性文件,那么这应该无关紧要——在读取文件时应该正确处理转义。
但是,如果您希望使用propertyfile
来编写用于其他用途的名称-值配置文件-不需要转义-则需要采用不同的方法。正如在回答一个相关问题时所提到的,您可以使用Ant replace
或replaceregexp
任务来完成此任务。