ant propertyfile task update property 删除属性文件中的所有注释
Posted
技术标签:
【中文标题】ant propertyfile task update property 删除属性文件中的所有注释【英文标题】:ant propertyfile task update property removes all comments from the property file 【发布时间】:2013-10-06 02:31:17 【问题描述】:我在 CentOS 5.5 上运行 ant 版本 1.6.5。在加载属性文件之前,我使用了 ant propertyfile 任务(一个可选的 ant 任务)来更新属性文件中的一些属性。属性文件任务似乎是从文件中删除所有现有的 cmets,只留下属性键值对。
这是我在 build.xml 文件中的代码 sn-p:
<target name="version">
<propertyfile file="$root.dir/build/cbo_version.properties" >
<entry key="major_number" value="$major_number"/>
<entry key="minor_number" value="$minor_number"/>
<entry key="maintenance_number" value="$maintenance_number"/>
<entry key="build_number" value="$build_number"/>
</propertyfile>
</target>
这是我的属性文件中的一个 sn-p:
#
# This file was designed to contain basic information about a build/release such
# as its version, code label, etc. for the purpose of traceability.
#
major_number=1
minor_number=0
maintenance_number=0
build_number=18
一旦我构建了我的应用程序,属性文件中所有以“#”为前缀的行都会被删除。我在 mac os x 10.8.4 和 ant 1.8.2 上尝试了相同的代码,并且代码运行得非常好。我想让 cmets 完全不受 propertyfile 任务的影响。请帮忙
【问题讨论】:
【参考方案1】:[已编辑] Ant 文档说 PropertyFile
任务:
从 Ant 1.8.0 开始,保留原始属性文件的 cmets 和布局。
http://ant.apache.org/manual/Tasks/propertyfile.html
【讨论】:
isnot2bad - 我需要在加载之前更新一些属性。我将不得不使用 propertyfile 任务。 是的。我完全误解了你的问题。我修改了答案。以上是关于ant propertyfile task update property 删除属性文件中的所有注释的主要内容,如果未能解决你的问题,请参考以下文章
对于 Java 8,需要使用哪个版本的 sonar-ant-task?
java 调用ant的自己定义task,默认不是build.xml 的一点问题