Java unter der GPL: Welcher Code muss Open Source sein?

Dies ist für manchen Anlass zur Besorgnis, denn die Anforderung, den Quellcode kostenlos herausgeben zu müssen, könnte die Geschäftsmodelle von professionellen Java-Entwicklern gefährden. Sun hat sich schnell bemüht, solchen Befürchtungen entgegenzutreten, und der Entwicklergemeinde versichert, dass auch mit der GPL-Veröffentlichung für die Java-Entwickler alles beim Alten bleibt. Der Grund hierfür ist die Classpath-Ausnahme, die für das Classpath-Projekt entwickelt wurde, einer Open-Source-Portierung der Java-Standard-Klassenbibliothek. Mittlerweile wird diese Classpath-Ausnahme auch für andere Open-Source-Java-Projekte wie Kaffe verwendet. Der Text der Classpath-Ausnahme ist kurz und lesenswert:

Das statische oder dynamische Binden dieser Bibliothek an andere Module erzeugt ein kombiniertes Werk auf Basis dieser Bibliothek. Daher decken die Bedingungen der GNU General Public Licence die gesamte Kombination ab.

Als spezielle Ausnahme gewähren die Inhaber dieses Copyrights für diese Bibliothek Ihnen die Erlaubnis, diese Bibliothek an unabhängige Module zu binden, um eine ausführbare Datei zu erzeugen, unabhängig von den Lizenzbestimmungen dieser unabhängigen Module, und diese ausführbare Datei nach eigenem Gutdünken zu kopieren und zu vertreiben, vorausgesetzt, dass Sie gleichzeitig die Lizenzbestimmungen aller gebundenen unabhängigen Module erfüllen. Ein unabhängiges Modul ist ein Modul, das nicht von dieser Bibliothek abgeleitet ist oder auf ihr basiert. Falls Sie diese Bibliothek modifizieren, können Sie diese Ausnahme auf Ihre Version der Bibliothek ausweiten, aber Sie sind nicht dazu verpflichtet. Sollten Sie sich entschließen, dies nicht zu tun, löschen Sie einfach diese Ausnahmeregelung aus Ihrer Version.

Kernaussage dieser Klausel ist, dass die einfache Einbeziehung von Java-Code – sei es durch Linking zu Java-Methoden oder die Erweiterung von Java-Klassen – nicht erfordert, dass man seinen gesamten Code unter die GPL stellen muss. Nur die direkte Modifikation von Java-Code bezieht sich auf den „Copyleft“-Charakter der GPL. Wenn man zum Beispiel eine GPL-lizenzierte Java-Klasse erweitert und diese in einem eigenen Projekt verwendet, würde die Classpath-Ausnahme bedeuten, dass man sein Projekt nicht unter der GPL veröffentlichen muss. Wenn man allerdings die Original-Klasse verändert und diese Änderungen veröffentlichen will, dann müsste dies unter der GPL erfolgen.

Fazit

Nur Entwickler, die an Java selbst arbeiten und nicht einfach mit Java, sind verpflichtet, ihren Code als Open Source zu veröffentlichen.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Latrodectus: Gefährlicher Nachfolger von IcedID

Latrodectus, auch bekannt als BlackWidow, ist auch unter dem Namen LUNAR SPIDER bekannt.

1 Tag ago

Apple meldet Rekordumsatz im vierten Fiskalquartal

Die Einnahmen klettern auf fast 95 Milliarden Dollar. Allerdings belastet der Steuerstreit mit der EU…

5 Tagen ago

Baseus Bowie 30 Max: Erste Bluetooth-Kopfhörer mit Head-Tracking-Spatial-Audio

Neue Over-Headset-Kopfhörer von Baseus bieten Raumklang-Audio und unterdrücken Störgeräusche um rund 96 Prozent.

5 Tagen ago

Microsoft steigert Umsatz und Gewinn im ersten Fiskalquartal

Das stärkste Wachstum verbucht die Cloud-Sparte. Microsoft verpasst bei der Umsatzprognose für das laufende Quartal…

5 Tagen ago

Bezahlkarten: Infineon verspricht weniger Plastikmüll

Ein Coil-on-Module-Package integriert Chip und Antenne, was den Kartenkörper fast vollständig recycelbar machen soll.

6 Tagen ago

Firefox 132 schließt elf Sicherheitslücken

Mindestens eine Anfälligkeit erlaubt das Einschleusen von Schadcode. Außerdem erweitern die Entwickler den Support für…

6 Tagen ago