March 2018
Table of Contents
Introduction
Welcome to the March Newsletter!
We hope you can enjoy some sun this time of year. This issue features brand-new build cache training, a blog post from Gradle CEO Hans Dockter on the challenges of being a build engineer, interactive debugging Gradle scripts, tutorials for build engineers, and plugin portal improvements.
From the community #
Here are some very interesting new plugins and blog posts from the month of March.
- Android Gradle Plugin v3.1.0 — Featuring a new DEX compiler, incremental desugaring enabled by default, and more.
- dependency-graph-generator-plugin — You can generate a visual dependency graph for your project using this plugin and graphviz.
- gradle-errorprone-javacplugin-plugin — Next generation of the Error Prone Gradle Plugin which takes advantage of many new Gradle features, and is a great example of a plugin written in Kotlin.
- gretty-gradle-plugin — A fork of the popular Gretty plugin for running web applications on Jetty and Tomcat using Gradle 4.6+.
- BootHub — A new Gradle project generator which supports rich custom templates, such as “simple-kotlin” which includes versioning, jar signing, publishing, and more.
- The build-changing magic of tidying up — Stefan Oehme shows you how to get better IDE assistance and build logic maintainability for Groovy and Kotlin build scripts alike by using
buildSrc/
. - Making Your Gradle Tasks Incremental — In this post, Niklas Baudy uses the task runtime API to make ktlint and other tasks
UP-TO-DATE
, thus fostering a faster build. - Publishing Libraries to Bintray using the Kotlin DSL — Simon Wirtz’s latest blog post on configuring Gradle to publish to Bintray through Travis CI.
- Building Gradle projects with Eclipse Buildship — An article in the Eclipse Newsletter that covers essentials and tips for building projects using Gradle and Eclipse.
- Gradle Talks at Devoxx France — There is a great collection of talks, labs, and BOFs about Gradle by core team members and contributors.
Have a blog post or plugin you’d like to see featured here? Just send us an email with the details to newsletter@gradle.com.
Build Cache Deep Dive #
Proper use of the build cache significantly reduces build times, and we want everyone to use it, so Gradle is announcing new Build Cache training!
In 3 hours, you’ll:
- Try both local and remote build caches on a real project
- Learn strategies for sharing and reusing build outputs
- Customize your build cache configuration
- Make un-cacheable tasks cacheable and feel the speed difference
- Learn effective shared cache management techniques
The training will conclude with 30 minutes of Q&A so you can learn how to apply the build cache to your unique projects. Learn more.
The Challenges of Build Engineers #
Hans Dockter writes on organizational anti-patterns that have emerged around building more complex software stacks, the business impact a healthy developer productivity culture can have, and how to use data to improve your engineering effectiveness.
From the article:
The benefits for an organization are enormous. The most successful organizations build hundreds of thousands of times a day. Why so many builds? Their successful build process enables them to build in smaller increments, to ship more updates with higher reliability and quality. This saves millions in lost R&D and opportunity cost.
You can read the full post on The Challenge of the Build Engineer.
Tutorials for build engineers #
Keeping your build fast and reliable is not a one-time job, it requires the right culture and the right tools.
We have written a new collection of tutorials that show how you can use build scans for:
Interactive debugging Gradle through your IDE #
Did you know that you can stop on breakpoints and step through your Gradle build logic just like your other sources?
Follow these steps in our troubleshooting guide to configure your IDE and Gradle to debug any code under buildSrc/
, and build.gradle.kts
files.
Gradle Plugin Portal now mirrorable #
The Plugin Portal can now be mirrored by any software capable of mirroring a maven2-compatible repository, such as Artifactory or Nexus. This is useful for developers to have a local mirror of all external software for security or auditing purposes.
See the instructions for mirroring the Gradle Plugin Portal.
Upcoming online training #
- Apr 12: Build Cache Deep Dive
- Apr 17-20: Advanced Gradle Fundamentals for Java/JVM
- May 15-16: Introduction to Gradle
- Anytime: Maximizing Developer Productivity with Gradle Enterprise
Until next time!
—The Gradle Build Tool Team