#jpms

Jendrik Johannesjendrik
2025-07-02

New release ๐ŸŽ‰

id("org.gradlex.java-module-packaging").version("1.1")

Combine it with other org.gradlex plugins for smooth dependency management and modern Java workflows to
build self-contained, installable Java apps with the Java Module System and jpackage. ๐Ÿงฉ ๐Ÿ“ฆ ๐Ÿš€

Special thanks to @koppor and @jabref for collaborating closely on this โ€” they now rely on GradleX plugins to streamline their packaging.

๐Ÿ‘‰ github.com/gradlex-org/java-mo

Jendrik Johannesjendrik
2025-04-24

The GradleX java-module-dependencies plugin/extension is now also available for Maven!

The solution extracts dependencies from ๐Ÿงฉ module-info.java files so that you do not need to repeat them in build.gradle or pom.xml files.

๐Ÿ˜ Gradle Plugin: github.com/gradlex-org/java-mo

๐Ÿฆ‰ Maven Extension: github.com/gradlex-org/java-mo

Jendrik Johannesjendrik
2025-03-19

What? ๐Ÿ˜ฎ๐Ÿคฏ

Notification that a module-info.java has been added to the popular Google Guava Java library.
Jendrik Johannesjendrik
2025-03-10

@travisfw sorry for the shameless self promotion. We are trying to fix this. ๐Ÿ˜„

github.com/jjohannes/java-modu

Jendrik Johannesjendrik
2025-02-17

On Wednesday (19. Feb) I speak about Dependency Management and Modularization in projects with and the Java Module System .

The talk takes place here in at the headquarters.

meetup.com/devtalk-tk/events/3

The topic is something I work on/with frequently and I spoke about this before. You can find a collection of materials and links here:

github.com/jjohannes/java-modu

Jendrik Johannesjendrik
2024-12-09

You can now watch the recording of my talk: Boosting Developer Productivity Through Better Modularity

Thoughts on: Why do we have too much accidental complexity in the modularity setup of many software projects? How can that be improved in the Java ecosystem?

๐ŸŽฅ Video: dpe.org/sessions/jendrik-johan

๐Ÿ—‚๏ธ Slides/Example: github.com/jjohannes/java-modu

Jendrik Johannesjendrik
2024-11-22

November newsletter:

newsletter.gradle.org/2024/11

Featuring the latest plugin release for Module () development.

github.com/orgs/gradlex-org/re

Java project that uses the Java Module System for dependency management.
Oliver Drotbohmodrotbohm@chaos.social
2024-11-21

๐Ÿ“ข #jMolecules 2023.2 and 2025.0 RC1 released! The former ships a fix for the #Hexagonal architecture verification and improvements for annotation retention. The latter #JPMS module descriptors and a baseline upgrade to Java 17. Grab 'em while they're hot! ๐Ÿ”ฅโ˜•๏ธโš—๏ธ

- github.com/xmolecules/jmolecul
- github.com/xmolecules/jmolecul

Jendrik Johannesjendrik
2024-11-18

โญ๏ธ new release โญ๏ธ

๐—ผ๐—ฟ๐—ด.๐—ด๐—ฟ๐—ฎ๐—ฑ๐—น๐—ฒ๐˜….๐—ท๐—ฎ๐˜ƒ๐—ฎ-๐—บ๐—ผ๐—ฑ๐˜‚๐—น๐—ฒ-๐—ฝ๐—ฎ๐—ฐ๐—ธ๐—ฎ๐—ด๐—ถ๐—ป๐—ด version 1.0 Gradle plugin

Another GradleX plugin for Java Module (JPMS) development.

Features:
๐Ÿ”ง Define targets (Operating Systems, Architectures) to build you application for
๐Ÿ“ฆ Build ready-to-ship installable packages (exe, dmg, deb, ...) directly with Gradle (uses jpackage under the hood)

๐Ÿงฉ Plugin
github.com/gradlex-org/java-mo

๐Ÿ“š Example project (includes multi-os GitHub actions setup)
github.com/jjohannes/java-modu

Jendrik Johannesjendrik
2024-09-17

With Java 23 (released today) you can import all classes of a Module in one statement. E.g.:

import module java.base;

I wonder if this will lead to more awareness of the Java Module System (JPMS).

With Gradle, using our GradleX plugins, you can create quite neat JPMS-based project setups nowadays.

Examples:
- github.com/jjohannes/java-modu
- github.com/jjohannes/gradle-pr

Playlists on the topic: youtube.com/playlist?list=PLWQ

Jendrik Johannesjendrik
2024-09-13

I did not create much new content in the past months. But I constantly do open source work: mainly on improving usability of the Java Module System with Gradle and in general better Module Management with Gradle.

The topic can be confusing as Java is modular since ever, but introduced the Java Module System only in newer versions.

If you want to learn more about this, you may enjoy my video series on the topic: youtube.com/playlist?list=PLWQ

Ian Brown :verified:igb@mastodon.hccp.org
2024-08-27

The hardest problem in computer science is getting a #Java program to work within the constraints of the #JPMS without bothering to learn how the #JPMS works.

Jendrik Johannesjendrik
2024-08-01

Had a great time at Java Forum Stuttgart yesterday. I got very good questions and feedback on my talk on the Java Module System.

For the talk, I prepared an example in which you define the relationships between your modules purely in Java: No more build.gradle or pom.xml.

This allows developers to focus on the relationships between modules in daily development without other build system configurations getting in the way.

github.com/jjohannes/java-modu

Java project setup that uses the Java Module System.
Jendrik Johannesjendrik
2024-07-29

Up early for the train to Stuttgart. Will speak at JFS on Wednesday about modularizing Java Projects. Talking about causes for accidental complexity and proposing solutions. Covering our GradleX plugins - gradlex.org - and what we do in the Hedera Services project - github.com/hashgraph/hedera-se

- java-forum-stuttgart.de/vortra
- github.com/jjohannes/java-modu

Blue morning sky above Hamburg
2024-06-06

Day #3 of #jsail2024 starting with a #Quarkus session. Probably supply chain security and #JPMS later. It's going to be a very interesting day again. #jsail #java

Flipchart with day #3 schedule written on Post-Its.
Jendrik Johannesjendrik
2024-05-03

Checkout this recording from the Toronto: "Modularizing the Unmodularizable" by Ihor Herasymenko (github.com/iherasymenko) about how to overcome challenges when using the Java Module System .

Ihor made many contributions to our GradleX 'extra-java-module-info' plugin and also talks about why and how to use the plugin.

youtube.com/watch?v=4RYh4wlNm50

Jendrik Johannesjendrik
2024-03-22

GradleX is featured in the March newsletter:

The latest release of the GradleX Extra Java Module Info plugin supports automatically generating complete module-info.class files for libraries that do not yet provide one. The content of the module-info.class is computed from the library's metadata.

New versions of the Java Module Dependencies and Java Module Testing plugins are also available.

github.com/gradlex-org/extra-j
github.com/gradlex-org/java-mo
github.com/gradlex-org/java-mo

Juan C Nunojuancnuno
2023-08-30

After god knows _how_ long, I've finally, _finally_ been able to run a test using only module paths. No class paths anywhere. Everything, as far as I can understand, is properly modularized.

I'm not convinced everything is 100% right. But at least I got _something_ running.

I resorted to javac and java commands in shell scripts. Getting this running in and is a whole other story. I'm not sure I can.

Jendrik Johannesjendrik
2023-08-14

(in German)

In der neuen Ausgabe (05/2023) der Java aktuell geht es um Build Tools. Da darf ein Artikel von mir natรผrlich nicht fehlen. Unter der รœberschrift "Anwendungen mit Java-Modulen und Gradle elegant strukturieren" schreibe ich darรผber, wie ihr die Stรคrken des Java-Modul-Systems und Gradle kombiniert.

Die digitale Fassung des Magazins gibt es hier kostenlos:
shop.doag.org/zeitschriften/id

Heading: Anwendungen mit Java-Modulen und Gradle elegant strukturieren
Jendrik Johannesjendrik
2023-06-19

Testing Modules (in ) can be painful at first. But a good test setup with modules brings your test runtime closer to production, as it does not (always) mix production and test code at test runtime. (Which, traditionally, most Java projects do.)

Interested in more? Watch my latest Understanding video:

youtube.com/watch?v=6rFEDcP8No

Understanding Gradle #33 โ€“ Classpath and Module Path in Testing

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst