Friday 13 May 2016

Gradle Goodness: Get Property Value With findProperty






by Sarang Nagmote



Category - Developer
More Information & Updates Available at: http://vibranttechnologies.co.in




Gradle 2.13 added a new method to get a property value: findProperty. This method will return a property value if the property exists or null if the property cannot be found. Gradle also has the property method to return a property value, but this method will throw an exception if the property is missing. With the new findProperty method and the Groovy elvis operator (?:) we can try to get a property value and if not found return a default value.
In the following example we have a task that tries to print the value of the properties sampleOld and sampleNew. We use the findProperty for sampleNew and the property method for sampleOld:
// File: build.gradletask resolveProperties ${project.hasProperty(sampleOld) ? project.property(sampleOld) : default value for sampleOld}" println "sampleNew -> ${project.findProperty(sampleNew) ?: default value for sampleNew}"}
First run the task and not set the project properties sampleOld and sampleNew:
$ gradle -q resolvePropertiessampleOld -> default value for sampleOldsampleNew -> default value for sampleNew$
Next we use the -P command line option to set a value for the properties:
$ gradle -q -PsampleOld="Value sampleOld" -PsampleNew="Value sampleNew" resolvePropertiessampleOld -> Value sampleOldsampleNew -> Value sampleNew$
Written with Gradle 2.13.

No comments:

Post a Comment