Introduction to Gradle is aimed at developers and build masters who have no previous experience with Gradle. It is designed to give you a foundation in Gradlefundamentals. We assume you have some familiarity with the Java programming language and some experience with automated builds. Our goal is to demonstrate the building blocks necessary for you to author your own build scripts.
This class is hands-on, so you will spend a significant portion of the class with your hands on the keyboard, learning by doing, working through lab exercises. By the end of this class, you will know the basics of Gradle and have a feel for how Gradle tasks and build scripts work.
The exercises in Introduction is based around building an example application using Java. The class will be delivered by a expert, which gives you an opportunity to ask questions to someone with the deepest Gradle knowledge available.
This class assumes some familiarity with the Java language (or a similar language) and automated builds. No prior experience with Gradle is required.
With this class, you will
a). Gain the basic understanding you need to get your Gradle build up and running.
b). Learn a few Gradle best practices.
c). Build a Java application.
d). Get to ask a Gradle expert questions!
We recommend that you continue to learn more through one of our advanced Gradle learning courses.
a). Gradle Documentation and Resources
c). Best Practices
d). Using the GradleWrapper
Lab: Using wrapper
e). Creating build scans
Lab: Creating a build scan
2. Gradle Building Blocks
a). High-level overview of using plugins
b). Defining Tasks
c). Executing Tasks
d). Built-in Tasks
e). Build Lifecycle
f). Incremental builds and working with files
g). Working with Archives
Lab: Exercises with Gradlebasics
3. Building Java Projects
a). Source layout conventions
b). Building a Java project with the java-library plugin
c). Built-in support for JUnit/JUnit5 tests
d). Importing into Eclipse/IntelliJ/IDE
Lab: Exercises with a Java project
4. Dependency Management Basics
a). Defining repositories
b). Defining dependencies
c). Transitive dependencies
d). Excluding troublesome dependencies
e). Forcing the use of versions
f). Dynamic/changing dependencies
g). Publishing artifacts
Lab: Exercises with dependencies and repositories
5. Organizing your Build
a). Defining a multi-project build
b). Project dependencies and partial builds
c). Configuration injection
d). Composite builds
6. Wrap Up
a). Latest Gradle Features
b). Built-in Plugins
c). Popular Community Plugins
d). Where to get more help