我正在尝试使用ant配置文件来自定义我的构建。我打算做的是使用具有以下模式的配置文件: 文件路径,要匹配的模式,要替换的模式
我希望它只是在配置文件中添加内容,而ant构建脚本会读取这些值并进行必要的更改。
我已经知道如何在文件中进行正则表达式查找和替换。我正在寻找的是一种从这样的配置文件中读取值的方法。
答案 0 :(得分:1)
有多种方法可以从Ant中的文件中读取信息。
通用的是LoadFile Ant Task。不过我会推荐loadProperties Task。您可以使用此任务来读取以下属性: toReplace = string_to_replace with = replacement_string,然后在你的正则表达式中使用属性“toReplace”和“with”。
答案 1 :(得分:1)
我会在ant中使用filterset功能。您可以使用模式@ replace_me @创建包含要替换的字符串的配置文件的参数化版本。然后定义属性文件以定义替换值。你可以
<copy toDir="${dist.dir}/docs">
<fileset file="config.xml"/>
<filterset>
<filtersfile file="path/to.properties"/>
</filterset>
</copy>
然后属性文件只是名称=值行。
您可以灵活地指定文件集和filterset,请参阅Ant文档。
答案 2 :(得分:0)
如果我理解正确,您希望为各种环境生成一组配置文件。
我目前使用的解决方案是由Ant任务调用的Groovy脚本。由于Ant不允许您重新定义已经设置的属性,因此使用它生成具有不同值的多个文件非常棘手。
如果您想探索此问题,请查看Groovy,尤其是Template Engine。