如何在Gradle中组合属性文件?
我有一个ant任务,它将两个属性文件组合在一起,形成一个属性文件 base.config包含大多数属性,override.config包含一个或多个修改base.config中的值的属性如何在Gradle中组合属性文件?,gradle,ant,Gradle,Ant,我有一个ant任务,它将两个属性文件组合在一起,形成一个属性文件 base.config包含大多数属性,override.config包含一个或多个修改base.config中的值的属性 如何在gradle中执行相同的操作而不导入ant任务?gradle有5个属性“作用域”用于查找属性。它们是: 项目实例本身 额外属性 扩展 习俗 任务 使用上述方法进行项目父级递归查找 您可以在此处阅读更深入的概述: Gradle按该顺序搜索属性。因此,您可以在链的较低位置定义基本属性,并在链的较高位置提供覆盖
如何在gradle中执行相同的操作而不导入ant任务?gradle有5个属性“作用域”用于查找属性。它们是: 项目实例本身 额外属性 扩展 习俗 任务 使用上述方法进行项目父级递归查找 您可以在此处阅读更深入的概述: Gradle按该顺序搜索属性。因此,您可以在链的较低位置定义基本属性,并在链的较高位置提供覆盖。有一项任务可以可靠地保存属性 然后,只需以覆盖基的方式传递属性 e、 g
这并不能回答问题。
<!--Combine the base.config and override.config together to create a properties file-->
<target name="generateProperties" depends="init">
<property prefix="app.properties" file="override.config"/>
<property prefix="app.properties" file="base.config"/>
<echoproperties destfile="${build.dir}/combined.properties">
<propertyset>
<propertyref prefix="app.properties"/>
<mapper type="glob" from="app.properties.*" to="*"/>
</propertyset>
</echoproperties>
</target>
task generateProperties(type: WriteProperties) {
Properties combinedProperties = new Properties()
File baseProperties = file('base.config')
baseProperties.withInputStream {
combinedProperties.load(it)
}
File overrideProperties = file('override.config')
overrideProperties.withInputStream {
combinedProperties.load(it)
}
properties = combinedProperties
outputFile = file("$buildDir/combined.properties")
}