Chapter 2. From Project Import to Release
2.1 Setting Project Properties
Problem
You want to add extra properties to your project, or externalize hardcoded values.
Solution
Use the ext block for common values. To remove them from the build file, put properties in the gradle.properties file, or set them on the command line using the -P flag.
Discussion
Gradle build files support property definitions using a simple ext syntax, where in this case “ext” stands for “extra.” This makes it easy to define a variable value once and use it throughout the file.
These properties can be hardcoded into the build file if you wish. Example 2-1 is a sample from a Gradle build file from the Android Annotations project.
Example 2-1. Sample “extra” property
ext{defAAVersion='4.0-SNAPSHOT'// change this to your desired version}dependencies{apt"org.androidannotations:androidannotations:$AAVersion"compile"org.androidannotations:androidannotations-api:$AAVersion"}
Normal Groovy idioms apply here, meaning that the variable AAVersion is untyped but takes on a String value at assignment, and that the variable is interpolated into the two Groovy string dependencies.
The use of the def keyword here implies that this is a local variable in the current build file. Defining the variable without def (or any other type) adds the variable as an attribute of the project object, making it available in this project as well as any of its subprojects.
Note
An untyped variable in the ext block adds ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access