Webstart Lizenz des entwickelten Java-Programms

Hallo liebe Community,

ich habe im Rahmen meiner Master-Thesis ein Programm im klinisch-biologischen Bereich geschrieben, das bald auf der Bioinformatik-Seite meiner Universität zur Ausführung bereit stehen wird. Genauer gesagt steht der Client zur Verfügung, der über SSL mit dem Server kommuniziert, der die Hauptlast der Berechnungen übernimmt. Der Client stellt die Ergebnisse dar. Der Source Code für den Client, den Server und die Datenaufbereitung sind auf GitHub. Zur Nachvollziehung wird auch der Quellcode veröffentlicht. Der Vollständigkeit halber muss eine Lizenz vergeben werden.

Ich kenne mich mit der Lizenzierung leider nicht nicht aus.
Ich verwende folgende Drittanbieter-Komponenten, eine von mir nachfolgend vergebene Lizenz wird die Lizenz der Packages berücksichtigen müssen:
1x Apache License 2.0 oder Eclipse Public License 1.0
2x LGPL 2.1
3x Apache License 2.0
1x BSD
1x CeCILL-C oder LGPL 3.0

Die Verantwortung der Ausführung sollte beim Anwender liegen.

Welche Lizenz kann ich vergeben?
 

mrBrown

Super-Moderator
Mitarbeiter
Afaik kannst du jede beliebige Lizenz nutzen. Wenn das sowieso Open Source wird, musst du auch wegen LGPL besonderes nichts beachten.

Je nachdem wie du dazu stehst würde ich entweder GPL v3 oder Apache/MIT/BSD nutzen
 
Zuletzt bearbeitet:

mihe7

Top Contributor
Die Frage wäre in einem Jura-Forum oder noch besser bei einem Fachanwalt sicher besser aufgehoben.

Meine absolut laienhaften Meinung zum Thema: es kommt sehr genau darauf an, was Du wie verwendest und auslieferst.

Nehmen wir mal an, Du hast eine Anwendung, die sich via JDBC mit einer Datenbank verbindet. Wir nehmen weiter an, die JDBC-URL ist frei konfigurierbar und Du lieferst keinen JDBC-Treiber aus. Dann ist die Sache klar: Die Anwendung besteht nur aus Deinem Code und liefert nichts anderes aus - Lizenz wie Du willst. Die Tatsache, dass irgendjemand einen unter der LGPL lizenzierten JDBC-Treiber verwendet, ist nicht Dein Problem.

Gehen wir einen Schritt weiter und fügen der Anwendung ein Class.forName("package.des.jdbc.treibers"); fest kodiert hinzu. Dann könnte man argumentieren, dass Deine Anwendung eine Bibliothek nutzt, wobei man hierüber trefflich streiten kann, denn noch steht hier nur ein Name und keine konkrete Bibliothek oder gar Version/Lizenz einer Bibliothek.

Also klären wir das und sagen ganz klar, dass die Anwendung den Treiber X Version Y unter der LGPL benötigt, sprich die Anwendung die Bibliothek nutzt. In dem Moment muss aufgrund den Bestimmungen der LGPL die Lizenz Deiner Anwendung es dem Anwender erlauben, die Bibliothek zu verändern (z. B. den Treiber patchen) und ein Reverse Engineering Deiner Anwendung zulassen, so dass die Veränderung an Deine Anwendung angepasst werden kann. Das ist selbst für proprietäre Software nicht dramatisch, denn das gilt in der EU sowieso ganz ähnlich.

Das ist die Nutzung der Bibliothek - nicht das Verteilen. Wenn Du den Treiber zusätzlich auslieferst, musst Du z. B. auch den Quellcode zum Treiber ausliefern.

Jetzt machen wir mal ein wenig weiter: Du passt den LGPL-lizenzierten JDBC Treiber an. Dann hast Du ein abgeleitetes Werk bzw. ein Werk basierend auf dem LGPL-Treiber. Dem entsprechend bist Du verpflichtet, dieses Werk unter die LGPL zu stellen.

Kommen wir zur Kompatibilität: nehmen wir an, bei der Anpassung hast Du Teile aus einer Apache Bibliothek verwendet. Dann hast Du ggf. ein Problem, denn wenn der angepasste Treiber ein abgeleitetes Werk/Kombination von/mit dem LGPL-Treiber und der Apache Bibliothek ist, müsste er nach der LGPL unter die LGPL gestellt werden. Hierzu schreibt die FSF: "Bitte beachten Sie, dass diese [Anm. meinerseits: Apache 2.0] Lizenz unvereinbar mit GPLv2 ist, weil einige Bedingungen enthalten sind, die in dieser Version der GPL nicht enthalten sind. Dazu zählen bestimmte Patentbeendigungs- und Schadenersatzklauseln. "

Kurz: das Ganze ist äußerst kompliziert und nichts für ein Java Forum.
 

mrBrown

Super-Moderator
Mitarbeiter
Kurz: das Ganze ist äußerst kompliziert und nichts für ein Java Forum.
Wobei das ganze deutlich einfacher ist, wenn man das auf obige Fall und das übliche "nur nutzen", aber nicht verändern der Bibliotheken bezieht.

Zu beachtenden Lizenzen sind dann nur Apache License 2.0, BSD, LGPL 2.1 und LGPL 3.0 - keine davon stellt Forderungen an die zu wählende Lizenz. Die geforderten Lizenz- und Copyright-Hinweise kann er einfach erfüllen, die Forderungen der LGPL auch, wenn das ganze am Ende Open Source ist.
 
Vielen Dank für die Antworten,

mihe7: Die Rechtsabteilung meiner Universität hatte keine Ahnung, auch Informatik-Professoren nicht. Aus Praktikabilitätsgründen wurden die Datensätze in Dateien abgelegt. Einen Datenbanktreiber brauche ich in dem Sinne nicht. Für den Server habe ich Jetty zur Kommunikation verwendet. Ich habe die Drittanbieterkomponenten zwar in die JAR-Datei gepackt aber nicht modifiziert. Gegen Reverse Engineering hätte ich nichts einzuwenden. Meine Vermutung ist die, dass sich ein paar Spezialisierte für das Thema interessieren werden. Die Source Codes zu den Libraries würde ich verlinken.

mrBrown: Ich werde die MIT-Lizenz wählen. Die State Changes der Apache-Lizenz finde ich nicht so wichtig. Ich dachte anfangs, ich müsste auf die verlinkten Klassen mehr Acht geben.

Ich hoffe ich habe das richtig verstanden, dass die Apache License 2.0, BSD, LGPL 2.1 und LGPL 3.0 kein Problem als verwendete Libraries mehr darstellen und ich meinen Teil unter die MIT-Lizenz stellen kann.
 

mihe7

Top Contributor
Wobei das ganze deutlich einfacher ist, wenn man das auf obige Fall und das übliche "nur nutzen", aber nicht verändern der Bibliotheken bezieht.
Klar, noch einfacher wird es, wenn man nur eine Lizenz verwendet :) Bei uns kommt nur die Apache Lizenz oder MIT/BSD ins Haus. Lizenzen, die "PL" im Namen tragen, sind nicht zugelassen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P JDK installieren OpenJDK: Lizenz von mit JLINK erzeugten Executables Allgemeine Java-Themen 1
izoards iText Lizenz? Allgemeine Java-Themen 2
B Lizenz und Urheberrecht, Worauf bei Veröffentlichung achten? Allgemeine Java-Themen 3
B Suche Datenquelle für lizenz-informationen Allgemeine Java-Themen 5
T Hilfe im Lizenz-Dschungel Allgemeine Java-Themen 11
J Lizenz auf Zeit Allgemeine Java-Themen 8
G Java Logo Lizenz? Allgemeine Java-Themen 2
N Lizenz Allgemeine Java-Themen 7
G Lizenz Allgemeine Java-Themen 2
T Anti-Kommerzielle Lizenz mit Copy-Left? Allgemeine Java-Themen 58
A Nochmals Java-Lizenz Allgemeine Java-Themen 29
B Lizenz und kleines Programm. Allgemeine Java-Themen 3
J Java Lizenz für Firmen Allgemeine Java-Themen 4
Luma JavaMail, Was versteht sich unter der CDDL Lizenz Allgemeine Java-Themen 6
G Licence-Header für InHouse entwickelten Source Allgemeine Java-Themen 8
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
KonradN Java 21 Release Allgemeine Java-Themen 5
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
G java.io.listFiles() Allgemeine Java-Themen 3
8u3631984 Frage zu Java Streams min / max Allgemeine Java-Themen 17
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
K Java-Projekt Allgemeine Java-Themen 11
K Java-Projekt Allgemeine Java-Themen 0
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
rode45e Java Threads Allgemeine Java-Themen 4
G java.io.listFiles() Allgemeine Java-Themen 2
N Java Dynamic Proxy Allgemeine Java-Themen 3
N Leichte Java Gegner Ki Allgemeine Java-Themen 10
A Java modul Problem Allgemeine Java-Themen 4
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
V Funktionale Schnittstelle in Java Allgemeine Java-Themen 3
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
KonradN Java 20 am 21. März Allgemeine Java-Themen 1
O Java Website Stock Bot Allgemeine Java-Themen 3
J Front-/Backend in Java Allgemeine Java-Themen 14
doopexxx JAVA Google Webcrawler Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
lalex1491 Java Aktienkurse nachfragen Allgemeine Java-Themen 4
J Class to link Java Allgemeine Java-Themen 4
V Wie funktioniert das Schlüsselwort "final" von Java? Allgemeine Java-Themen 19
mrStudent Inferenz JAVA Allgemeine Java-Themen 6
U URI Rechner (Java Script) Allgemeine Java-Themen 7
TheSkyRider Java Geburtsdatum Textfeld Allgemeine Java-Themen 7
mihe7 Java 19 JavaDocs: Browserintegration Allgemeine Java-Themen 0
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
H Java Rechner Programmierung der Mathematik Allgemeine Java-Themen 33
Lennox Schinkel Java Kara Auf einen Java Host laufen lassen Allgemeine Java-Themen 17
C Fußnoten von DocX mit Java Allgemeine Java-Themen 2
C Fußnoten in DocX mit Java Allgemeine Java-Themen 1
M Aussagenlogik in Java Programmieren Allgemeine Java-Themen 22
B Per Java Word Dokument schreiben? Allgemeine Java-Themen 8
krgewb Java-Bibliothek für ONVIF Allgemeine Java-Themen 1
KonradN Oracle übergibt (Java Teile der) GraalVM Community Edition an OpenJDK Community Allgemeine Java-Themen 2
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
B Java mit command line und jars benutzen? Allgemeine Java-Themen 18
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
Mick P. F. Wie kriege ich die Fehlermeldung "java: symbol lookup error: ..." weg? Allgemeine Java-Themen 11
K Nachhilfe Java Allgemeine Java-Themen 11
KonradN Java 19 Allgemeine Java-Themen 11
F IDEA IntelliJ Java Songliste erstellen Allgemeine Java-Themen 6
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
Sachinbhatt Sind alle Methoden in Java implizit virtuell Allgemeine Java-Themen 2
E Java und integrierte Grafikkarten Allgemeine Java-Themen 18
Sachinbhatt Wie wird die Typumwandlung bei Mehrfachvererbung in Java implementiert? Allgemeine Java-Themen 3
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
A Java unter Win 10 Allgemeine Java-Themen 1
B Woher kommen die Bildschirmkoordinaten beim java Robot? Allgemeine Java-Themen 14
P9cman java.Lang Klassen fehlen in JRE System Library Allgemeine Java-Themen 1
T Java Robot Class - Bot Allgemeine Java-Themen 3
E Wie Java Heap Space vergrößern? Allgemeine Java-Themen 3
B Java Programm auf virutellem Desktop laufen lassen? Allgemeine Java-Themen 1
D VBA Code mit Java ausführen möglich? Allgemeine Java-Themen 10
berserkerdq2 Threads, wie genau läuft das in Java ab? (Ich kann Threads erstellen und nutzen, nur das Verständnis) Allgemeine Java-Themen 6
izoards Java Home Pfad unabhängig von der Version Allgemeine Java-Themen 7
N JAVA-Code mit Grafikfenster zeichnet in Windows, aber nicht Mac. Allgemeine Java-Themen 4
L Java überprüfen lassen, ob sich ein gegebener Pfad / das Programm an sich auf einer CD oder Festplatte befindet Allgemeine Java-Themen 14
KonradN CVE-2022-21449: Fehler in Java bei Signaturprüfung Allgemeine Java-Themen 20
berserkerdq2 Java sql Allgemeine Java-Themen 15
JordenJost Unverständlicher Java code? Allgemeine Java-Themen 21
LimDul XSD To Java - Überschreiben von Assoziationen Allgemeine Java-Themen 1
Aartiyadav Comparisons and Swapa in Bubble-sort Java Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben