我想实现一个非常基本的事情(用任何普通语言):我想获得一个属性的默认值(约定)。Gradle 文档在Lazy configuration一章中,描述了如何将约定应用于属性:
def property = objects.property(String)
// Set a convention
property.convention("convention 1")
println("value = " + property.get())
// Can replace the convention
property.convention("convention 2")
println("value = " + property.get())
property.set("value")
// Once a value is set, the convention is ignored
property.convention("ignored convention")
println("value = " + property.get())
问题是,当您设置一个值时,您无法查询property
以获取什么是约定(默认值)的信息。似乎清除(无效)该值的唯一方法是:
property.value(null).get()
但这只是愚蠢的,因为您正在执行不必要的操作,而约定就在那里?
有谁知道如何在不清除价值的情况下获得它?