Java 9 Jigsaw: Wenn die Community zum Konzern-Spielball wird

Große Open-Source-Projekte werden immer mehr von Unternehmen und deren Angestellten betreut. Wie die Diskussionen um das Java-Modulsystem Jigsaw zeigt, können die Projekte trotz aller Regeln dabei leicht zum Spielball von Konzerninteressen werden.

Eine Analyse von veröffentlicht am
Ein Puzzlespiel (engl. Jigsaw) dient als Namensgeber für das geplante Modulsystem in Java 9.
Ein Puzzlespiel (engl. Jigsaw) dient als Namensgeber für das geplante Modulsystem in Java 9. (Bild: Rain Love AMR, flickr.com/CC-BY 2.0)

Der kollaborative Aspekt beim Entwickeln von Open-Source-Software wird von vielen großen IT-Unternehmen gern hervorgehoben. Nutzer, Kunden und Hersteller können so direkt an dem Produkt arbeiten, das sie selbst einsetzen. Zusätzlich zu Streitereien um Urheberrechte und Patente oder nach Übernahmen, die Open-Source-Projekte bedrohen können, zeigen nun die Diskussionen um das Modulsystem in Java 9 eindrücklich, dass auch die Weiterentwicklung der Projekte selbst zum Spielball von Konzerninteressen werden kann.

Neuordnung für Java

Stellenmarkt
  1. (Junior) Mathematiker / Aktuar / Analyst (m/w/d) Actuarial Function Non-Life Calculation Unit
    Generali Deutschland AG, Köln
  2. Cumulocity IoT Frontend Developer (m/w/d)
    Software AG, Berlin, Darmstadt, Düsseldorf, Leipzig, Stuttgart
Detailsuche

Mit dem Java Platform Module System, das offiziell als JSR-376 (Java Specification Request) geführt wird und den Codenamen Jigsaw trägt, soll eine Umorganisation der Sprache selbst durchgeführt werden. Dabei ist ein Modul eine Sammlung von Code sowie Daten und besteht wiederum selbst aus einer Menge Java-Packages, die ihrerseits Klassen, Interfaces und Typen enthalten.

Lösen soll Jigsaw wohl vor allem das Problem der sogenannten Jar-Hell. Diese in Anlehnung an die DLL-Hell unter Windows genutzte Bezeichnung beschreibt verschiedene Schwierigkeiten beim Verteilen von Java-Binärdateien, etwa den Umgang mit Abhängigkeiten oder auch unterschiedlichen Versionen einer Bibliothek. Helfen soll das nicht nur bei der Anwendungsentwicklung, sondern vor allem auch dem vergleichsweise komplexen Java-System aus JDK und der Laufzeitumgebung (Platform).

Jigsaw ist erstmals im Jahre 2008 angekündigt worden, Ideen dazu sind aber sogar noch älter. Und obwohl das System zuerst von Java 7 auf Java 8 und schließlich sogar auf Java 9 verschoben worden ist, sah es vor einigen Wochen kurz danach aus, als ob das Jigsaw-Projekt nicht mit Java 9 veröffentlicht würde.

Jigsaw als Zankapfel

Golem Akademie
  1. Linux-Systemadministration Grundlagen
    25.-29 Oktober 2021, online
  2. Linux-Systeme absichern und härten
    8.-10. November 2021, online
  3. Docker & Containers - From Zero to Hero
    27.-29. Oktober 2021, online
Weitere IT-Trainings

Der Grund für die Verzögerungen kurz vor dem Abschluss der Arbeiten waren offensichtliche Streitigkeiten zwischen Java-Sponsor Oracle einerseits sowie Red Hat und IBM andererseits. Oracles Chefarchitekt für Java, Mark Reinhold, hat dafür gesorgt, dass Jigsaw bereits im vergangenen Jahr in den Vorabversionen zu Java 9 integriert wurde. Doch im Frühjahr äußerten dann Red Hat und IBM starke Bedenken an der bisherigen Umsetzung und bemängelten auch, dass die Umsetzung prinzipiell zu schnell durchgeführt worden sei.

Um diesen Bedenken deutlich Nachdruck zu verleihen, stimmten IBM und Red Hat in einer ersten Abstimmung gegen Jigsaw. Wohl weil die beiden Konzerne mit ihren Middleware-Angeboten extrem viel Einfluss auf das gesamte Java-Ökosystem haben, folgten auch andere Beteiligte in dem Gremium dem negativen Votum, mit explizitem Verweis auf den fehlenden Konsens innerhalb des Gremiums.

Oracle ist dadurch für Außenstehende sehr unerwartet unter extremen Druck geraten, Jigsaw doch noch zu retten. Und genau das war von Red Hat und IBM wahrscheinlich auch so beabsichtigt, um ihre eigenen Interessen durchzusetzen. Auf Englisch gibt es für so ein Verhalten die Redewendung "to play hardball", was soviel bedeutet wie "mit harten Bandagen kämpfen".

Die tatsächlichen Hintergründe dafür, dass Red Hat und IBM diesen Schritt gewagt haben, lassen sich nur vermuten. Es liegt aber nahe, dass die beiden IT-Konzerne ihre eigenen Java-Angebote schützen wollten. Denn Teile ihrer Middleware-Angebote bieten bereits seit einigen Jahren Modulsysteme an. Diese sind Jigsaw zwar vom Prinzip her sehr ähnlich, aber nicht ohne weiteres damit kompatibel.

Genaugenommen sind das technische Probleme, die bei der Umsetzung von Jigsaw Java 9 berücksichtigt werden müssen. Das Verhalten von Red Hat und IBM gegenüber Jigsaw geht nach der jahrelangen Kooperation aber doch sehr deutlich über das Aufzeigen technischer Probleme hinaus - es ist eine Machtdemonstration.

Das zeigt sich auch daran, dass es nach der ersten Abstimmung nur wenige Wochen gebraucht hat, um in dem zuständigen Gremium doch noch eine Mehrheit für Jigsaw zu finden. IBM und Red Hat enthielten sich lediglich bei dieser erneuten Abstimmung ihrer Stimme. Allzu groß können die Bedenken also nicht gewesen sein.

Von dem Willen zu enger Zusammenarbeit und der in der Open-Source-Community üblichen Einstellung, beim Gegenüber immer eine gute Absicht anzunehmen, ist solch ein Verhalten weit entfernt. Es ist nichts anderes als das leider übliche Geplänkel internationaler Großkonzerne. Das hilft keiner Community.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Boereck 02. Aug 2017

Wenn du dir anschaust wie viele Abhängigkeiten du auch mit einem Microservice Framework...

mnementh 01. Aug 2017

Allein auf der Basis von Hobbyentwicklern und Spenden existieren viele OSS-Projekte sehr...

FreiGeistler 31. Jul 2017

-------------------------------------------------------------------------------- Was...



Aktuell auf der Startseite von Golem.de
Mobiles Betriebssystem
iOS 15 mit Focus, OCR und schickem Facetime

Apple hat iOS 15 für iPhones und den iPod Touch vorgestellt. Radikale Neuerungen sind nicht dabei, dafür aber einige interessante Funktionen.

Mobiles Betriebssystem: iOS 15 mit Focus, OCR und schickem Facetime
Artikel
  1. Windows 11: Geplante Obsoleszenz ist schlecht, Microsoft!
    Windows 11
    Geplante Obsoleszenz ist schlecht, Microsoft!

    Kunden ärgern sich darüber, dass ihre vier Jahre alten Prozessoren bereits kein Windows 11 mehr unterstützen. Zu Recht.
    Ein IMHO von Oliver Nickel

  2. Apple Watch: watchOS 8 mit Achtsamkeits-Funktion und Porträt-Zifferblatt
    Apple Watch
    watchOS 8 mit Achtsamkeits-Funktion und Porträt-Zifferblatt

    Apple hat für die Apple Watch mit watchOS 8 ein neues Betriebssystem vorgestellt, das neue Zugriffs-, Konnektivitäts- und Achtsamkeitsfunktionen auf die Smartwatch bringt.

  3. Diablo 2 Resurrected: Entwickler äußern sich zu Blizzard-Boykott
    Diablo 2 Resurrected
    Entwickler äußern sich zu Blizzard-Boykott

    Für viele Spieler wäre Diablo 2 Resurrected ein Pflichtkauf. Blizzard soll aber nicht unterstützt werden. Das sagen Entwickler zum Dilemma.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • MM-Prospekt (u. a. Asus Gaming-Notebook 17" RTX 3050 1.099€) • PCGH-PC mit Ryzen 5 3600 & RTX 3060 999€ • Samsung 970 Evo Plus 1TB 99€ • Saturn Hits 2021 (u. a. Philips 55" OLED 120Hz 1.849€) • Corsair RGB 16GB Kit 3600MHz 87,90€ • Dualsense Schwarz + Deathloop 99,99€ [Werbung]
    •  /