Skip to content

beginner

Gradle Basics

This blog post is about the basics of gradle. It is part of a longer series focusing on different build approaches using gradle. I will link further in depth posts for specific topics at the end of the post. During the Blog post I will show a lot of snippets. Those snippets will be mostly shorted and previously added stuff will not be shown. You will find spoilers sometimes that include the full files. Check those if you get lost on how your build file should look like.

This blogpost will mainly cover the general structure of gradle files, more precisely the gradle.build and gradle.settings files.

Gradle Application Plugin

The application plugin is included in Gradle and is a nice alternative to shadow when your application is standalone. For example a webservice or Discord bot. It is however not useful, when your application is a minecraft plugin. Please see the minecraft post for that.

Gradle Shadow Plugin

The shadow plugin for gradle is a third party plugin that is widely used. It is especially useful if you need to bundle all your dependencies in a single jar, producing a so called FatJar. If you simply want to ship a standalone application, the application plugin might be the better choice. Shadow is ideal for minecraft plugins for example.

Sharing and Publishing Dependencies with Gradle

German Version

Reusing or accessing code from other projects with gradle is very easy. This blog posts dives into publishing dependencies to your local maven repository (or remote) to use it in another project. We also take a short look at online repositories and the small extras you have to account for when your projects are minecraft plugins.

If you are not familiar with gradle yet, have a look at my previous post about gradle basics.

Jackson Bukkit - Bukkit serialization done the right way

German Version

With the introduction of paper plugins, paper decided to drop support for the ConfigurationSerializable interface. While this interface and the system behind it provided a usable way to de/serialise an object fairly easily, it wasn't ideal by any means. It was hard to learn and required a lot of boilerplate code to simply de/serialise an object. So we're going to say goodbye to it. It won't be missed.

Logging in Minecraft - The good and better way

German Version

This blog post is about logging and writing information to the console in Minecraft. There are a lot of ways to write data to the Minecraft console. And there are a lot of bad or wrong ways to write to the Minecraft console. We'll start by looking at some bad practices, then move on to the built-in plugin logger, and finish with a look at slf4j.

Minecraft Development with Gradle: Basic and Advanced | A guide

German Version

This blog post is about developing Minecraft plugins for Paper and Spigot servers using Gradle. The Minecraft community has built a huge ecosystem for Minecraft around the Gradle build tool. Instead of throwing a sample Gradle file at you, we will go through this step by step. We will start with the basic Gradle layout, set up repositories and dependencies, and move on to plugins.