Es kann immer wieder vorkommen, dass bestimmte Bibliotheken das
Java-Modulsystem
nicht unterstüzen. Möchte man nun seinen eigenen Code
auf das JPMS (Java Platform Module System) umstellen, muss man an
einigen Stellen tief in die Trickkiste greifen. Im heise
Artikel wird näher auf solche Abhängigkeiten eingegangen
und erklärt, wie man damit umgehen kann.
Heise Autor Hendrik Ebbers berichtet von einem großen Gradle-Projekt,
welches auf das JPMS umgestellt werden sollte. Bei einiges Module
gelanges Ihnen eine nachhaltige Lösung zu erlzielen. Dazu haben
sie direkt beim jeweiligen Projekt einen Pull-Request erstellt und
um die Ergänzung eines Automatic-Module-Names gebeten.
Bei Abhängigkeiten, bei denen man aus verschiedenen Gründen
nicht einfach einen Pull-Request stellen kann, wird eine andere
Umsetzung benötigt. Dazu muss man aus den Abhängigkeiten
eigenständig ein Java-Module erstellen. Das lässt sich
entweder durch händisches Eintragen des Automatic-Module-Names
im Manifest des JARs realisieren oder durch Nutzung eines Plug-Ins
wie "extra-java-module-info" von Jendrik Johannes.
Auch mit den hier vorgestellten Umsetzungen, kann ein großes
Problem nicht behoben werden: Verstößt ein JAR gegen
die package split contraints des JPMS, kann es nicht zum modulepath
hinzugefügt werden. Um dieses Problem zu lösen müssen
deutlich weitreichendere Schritte vorgenommen werden, die im Artikel
nicht weiter beschrieben wurden.
(jl, hannover)
(siehe auch: Heise-News-Ticker)
Hannover
· EDV-Beratung · Linux · Novell · Microsoft ·
Seminar · IT-Consult · Netzwerk · LPIC · CLE
|