Session

nob.java: How to Build a Build Tool in One File

Tired of wrestling with Maven's XML soup or Gradle's Groovy gymnastics? What if I told you that you could build, package, and manage dependencies for your entire Java project using nothing but the JDK and a single Java file?

In this talk, we'll create nob.java - a self-contained build tool that proves sometimes the best solution is the simplest one. Starting from first principles, we'll build a complete build system that:

- Compiles your project using the Java Compiler API
- Resolves and downloads dependencies from Maven Central
- Packages everything into executable fat JARs
- Watches for changes and rebuilds automatically
- Requires zero installation beyond your JDK

But this isn't just about creating another build tool - it's about understanding what's really happening under the hood. We'll dive deep into the Java Compiler API, explore Maven repository protocols, and learn how modern build tools actually work by implementing their core features ourselves.

By the end of this session, you'll have a working build tool that fits in a single file.

Should you use this in production? Probably not?

Is it fun to do? Absolutely!

Frederik Pietzko

Fullstack Kotlin Enthusiast

Aachen, Germany

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top