Call : (+91) 968636 4243
Mail : info@EncartaLabs.com
EncartaLabs

Gradle

( Duration: 3 Days )

In Gradle training course, you will learn to use the Gradle build system to increase their productivity. This course first runs through some Groovy fundamentals and then moves quickly into thorough in-depth coverage of the Gradle build system including an extended module on how to work with the new Gradle based Android build system as well as an introduction on using the Gradle Scala plugin.

By attending this Gradle Workshop, delegates will learn to:

  • Use the core Gradle DSL types
  • Work with external dependencies
  • Use build-in tasks and plugins
  • Hook into the build lifecycle
  • Integrate with Ant and Maven
  • Use the sophisticated Gradle logging engine to maintain a clean build output
  • Use Gradle’s powerful file system abstractions
  • Apply best practices for maintainable builds
  • Work with multi-project builds
  • Achieve highly performing builds
  • Create a zero-administration environment for Gradle builds

  • This Gradle class assumes a good understanding of the Java language.

COURSE AGENDA

1

The Gradle Project

  • About the project
  • Documentation / Resources / Support
2

The Groovy Language

  • Executing Groovy code
  • Syntax basics
  • Dynamic typing
  • Domain Specific Languages & Gradle
  • Groovy JDK extensions
  • Closures
3

Gradle Introduction

  • The Gradle philosophy
  • Installing Gradle
  • Gradle build scripts
  • The build lifecycle
  • The Gradle build daemon
4

Tasks

  • Declaring tasks
  • Executing tasks
  • Configuring tasks
  • Implementing custom tasks
  • Extending tasks
  • Task dependencies
  • Task exclusion
  • Conditionally skipping tasks
  • The Task Graph API
  • Task rules
5

Logging

  • Controlling log levels
  • Logging from the build script
  • Logging from classes
  • Managing child process output
6

Plugins

  • What are Gradle plugins?
  • The role of plugins
  • Packaging and distributing plugins
  • Review of core plugins
7

Working with files

  • The file tasks (e.g. Copy, Sync)
  • Filtering, excluding, aggregating, renaming
  • Working with CopySpecs
  • Expanding and making archives (zip, tar etc.)
  • The Gradle file APIs
  • Best practices for working with files
8

Ant Integration

  • Gradle compared to Ant
  • When to utilize Ant in Gradle
  • Using Ant tasks in Gradle builds
  • Importing Ant builds
  • Migrating from Ant to Gradle
9

Dependency management

  • Terminology
  • Repositories, metadata and transitive dependencies
  • Dependency configurations
  • Declaring dependencies
  • Customizing dependency resolution & conflict management
  • Publishing artifacts (Maven & Ivy)
10

Extending the model

  • Extending existing objects
  • Object extensions
  • Object containers & configuration rules
11

Task inputs & outputs

  • The power of the input/output model
  • Describing inputs and outputs
  • Incremental builds
  • Inferring task dependencies
12

Task inputs & outputs

  • Source sets
  • Project conventions
  • Automated testing
  • Building JARs
13

The Scala plugin

  • Project conventions
  • Making Scala builds fast
  • Automated Testing
14

The Android plugin

  • Conventions
  • Product Flavors
  • Build Types
  • Build Variants
  • Library projects
  • Testing
  • Android Multi-module builds
15

Multiproject builds

  • Defining a multiproject build
  • Avoiding duplicate configuration with configuration injection
  • Inter project dependencies
  • Downstream and upstream partial builds
16

The build runtime

  • Extending all builds with init scripts
  • Init script locations
  • Using the Gradle wrapper
  • Customizing the Gradle distribution with init scripts

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 6,000 various courses on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting https://www.encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.

Top
Notice
X