我尝试在Gradle任务中将一些键值对写入属性文件,我发现Gradle为此提供了一个API WriteProperties,但我无法使用它。
我尝试了不同的方法(我正在学习Gradle,所以我不知道是否使用了一些不正确的语法):
1.
task myTask {
doLast {
WriteProperties {
outputFile = file 'prop.properties'
encoding = 'UTF-8'
properties = [TEST:42]
}
}
}
task myTask {
doLast {
def writer by register(WriteProperties.class) {
outputFile = file 'prop.properties'
encoding = 'UTF-8'
properties = [TEST:42]
}
}
}
task myTask {
doLast {
// Other stuff
}
}
task writeProperty(type: WriteProperties) {
outputFile = file 'prop.properties'
encoding = 'UTF-8'
properties = [TEST:42]
}
writeProperty.dependsOn myTask
task myTask {
doLast {
// Other stuff
}
finalizedBy writeProperty
}
task writeProperty(type: WriteProperties) {
outputFile = file 'prop.properties'
encoding = 'UTF-8'
properties = [TEST:42]
}
task myTask {
doLast {
// Other stuff
}
}
class MyPlugin implements Plugin<Project>{
void apply(Project project) {
project.task('writeProperty') {
WriteProperties {
outputFile = file 'prop.properties'
encoding = 'UTF-8'
properties = [TEST:42]
}
}
}
}
apply plugin: MyPlugin
writeProperty.dependsOn myTask
他们都没有用这些值创建文件。有没有其他方法可以做到这一点?我想知道使用WriteProperties API的正确方法,因为文档现在没有任何有用的示例。
我找到了用java语法创建Properties()对象和写入文件的解决方案,但没有一个是用这个API的。
1条答案
按热度按时间ibrsph3r1#
我正在使用纯Gradle/Groovy创建一个属性文件,如下所示:
或