DEV Community

Bertil Muth
Bertil Muth

Posted on

What‘s good documentation for Gradle?

I use Gradle for my open source projects. I like its features, specifically the easy way to do multi project builds.

I struggled with the official documentation on the website. A common trap with technical docs: a lot of details on how things work internally and how you can configure the tool.

What I miss is: say you have goal X, like publishing your project on Maven Central, what are the exact recommended steps to do that? I don’t want to become a Gradle expert, I want to get a job done.

I had to figure out a lot by googling, Stack Overflow and reading blogs.

What are your experiences with Gradle docs? Do you know good and reliable sources of information about Gradle?

Top comments (3)

cmanique profile image
Carlos Manique Silva

Well, sadly I have to agree.
Most of the useful information about grade I got from google, or the actual source code.
It's hard to find task oriented docs for tools of this kind though, I don't think maven fares any better.

barrettotte profile image
Barrett Otte

+1 for googling and stack overflow. I'm pretty dumb and the official Gradle documentation just doesn't seem to ever get me where I need to go. Not to mention there are certain "best practices" that have changed over time as Gradle has grown (e.g. 'compile' vs 'implementation').

I mainly just try to figure out how to do something once and keep it in a public repo so I can use it as reference in the future. I absolutely dread having to figure out how to do a new feature or build step every time.

One last thing I found somewhat useful is just going onto GitHub and searching for an existing gradle repo.
For example, I would make a search like 'gradle codenarc', set language to 'Groovy', and sort by date descending. This definitely doesn't work most of the time, but sometimes you'll find the magic repository that already did the hard work. This method also depends on how popular your dependency is.

bertilmuth profile image
Bertil Muth

Interesting approach to use the GitHub projects as a template (if it fits)