Getting Started with Gradle in Windows OS - Hello World Build

We will download, install and configure gradle, and then execute a simple program.

 

Prerequisites

  1. Gradle 1.x requires a Java JDK 5 or higher to be installed and the location needs to be added to an environment variable JAVA_HOME. 

  2. Gradle 2.x requires a Java JDK 6 or higher to be installed and the location needs to be added to an environment variable JAVA_HOME. 

Note: Gradle ships with its own Groovy library, therefore no Groovy needs to be installed. Any existing Groovy installation is ignored by Gradle.

 

Downloading, installing and configuring Gradle

  1. You can download gradle from http://www.gradle.org/downloads. Download binaries-sources-documentation version or binaries version.

  2. Unzip the zip to a location (e.g. D:\gradle-1.11)

  3. Now add the gradle location (e.g. D:\gradle-1.11) to an environment variable called GRADLE_HOME and add GRADLE_HOME\bin (enter full path) to PATH environmental variable.  

  4. Now open a command prompt and execute gradle to verify if it is there in the PATH.

 

Printing “Hello World” from build file

We will verify gradle setup by printing a “Hello World” from the build file.

Createa simple build file named ‘build.gradle’:

task helloWorld << {

println 'Hello World'

}

Now run this as ‘gradle <taskname>’:

gradle helloWorld

This will print:

:helloWorld

Hello World

BUILD SUCCESSFUL

Total time: 2.626 secs

You can use the –q option to suppress all info messages except error messages:

gradle -q helloWorld

This will print:

Hello World

 

Useful options

Apart from the -q option we saw now, there are many other options. To see a list of all command line options, use the –h option as:

gradle -h

This will list out options. Below are some of them:

-Dproperty=value for defining a system property

--info or –i to set log level to INFO for more verbose output

--debug or –d to enable debug logs.

--dry-run or –m to dry run the build file without actually executing the actions.

--quiet or –q to suppress all info messages except error messages:

--gui to launches the Gradle GUI.

--stacktrace or –s to print an abbreviated stack trace when an exception is thrown by the build.

The -b can point Gradle to a nondefault build file. By default, it looks for a file called build.gradle.

 

Documentation

You can find the documentation on standard Gradle features @ docs/dsl/index.html within the gradle installation.

 

What next?

Next we will see a Java Hello World program compiled using gradle.

 

References

http://www.gradle.org/downloads

http://www.gradle.org/installation

Book: Building and Testing with Gradle by Tim Berglund and Matthew McCullough.

 

Software Versions Tested Against

Examples in this note has been tested against Gradle versions 1.11 and 2.1.

Quick Notes Finder Tags

Activities (1) advanced java (1) agile (3) App Servers (6) archived notes (2) Arrays (1) Best Practices (12) Best Practices (Design) (3) Best Practices (Java) (7) Best Practices (Java EE) (1) BigData (3) Chars & Encodings (6) coding problems (2) Collections (15) contests (3) Core Java (All) (55) course plan (2) Database (12) Design patterns (8) dev tools (3) downloads (2) eclipse (9) Essentials (1) examples (14) Exception (1) Exceptions (4) Exercise (1) exercises (6) Getting Started (18) Groovy (2) hadoop (4) hibernate (77) hibernate interview questions (6) History (1) Hot book (5) http monitoring (2) Inheritance (4) intellij (1) java 8 notes (4) Java 9 (1) Java Concepts (7) Java Core (9) java ee exercises (1) java ee interview questions (2) Java Elements (16) Java Environment (1) Java Features (4) java interview points (4) java interview questions (4) javajee initiatives (1) javajee thoughts (3) Java Performance (6) Java Programmer 1 (11) Java Programmer 2 (7) Javascript Frameworks (1) Java SE Professional (1) JPA 1 - Module (6) JPA 1 - Modules (1) JSP (1) Legacy Java (1) linked list (3) maven (1) Multithreading (16) NFR (1) No SQL (1) Object Oriented (9) OCPJP (4) OCPWCD (1) OOAD (3) Operators (4) Overloading (2) Overriding (2) Overviews (1) policies (1) programming (1) Quartz Scheduler (1) Quizzes (17) RabbitMQ (1) references (2) restful web service (3) Searching (1) security (10) Servlets (8) Servlets and JSP (31) Site Usage Guidelines (1) Sorting (1) source code management (1) spring (4) spring boot (3) Spring Examples (1) Spring Features (1) spring jpa (1) Stack (1) Streams & IO (3) Strings (11) SW Developer Tools (2) testing (1) troubleshooting (1) user interface (1) vxml (8) web services (1) Web Technologies (1) Web Technology Books (1) youtube (1)