Können wir Java für kommerzielle Zwecke nutzen?

49

Die Java ist GPL-Lizenz (Referenz aus Wikipedia). Ich bin nicht sicher, ob ich es in kommerziellen Projekten verwenden kann. Ich habe bereits eine in Java geschriebene Website und beabsichtige, diese für kommerzielle Zwecke zu nutzen. Ist das illegal?

Shisoft
quelle
Dupe - Einschließlich einer GPL-
Lizenzbibliothek
2
@Sathya Bei dieser Frage geht es um die Verwendung eines GPL-Plugins in einer Java-App. Diese Frage scheint sich mit der Rechtmäßigkeit der Verwendung von Java selbst zu befassen.
Adam Lear
6
@Shisoft Wenn man bedenkt, wie viele kommerzielle Java-Anwendungen es gibt, muss man sich keine Sorgen machen. Sie würden mindestens ein paar Klagen sehen, wenn es nicht in Ordnung wäre.
Adam Lear
Java SE ist keine GPL mehr, sondern BCL. Es steht Oracle frei, die Lizenz nach Belieben zu ändern. (FAQ # 8 oracle.com/technetwork/java/javase/overview/… ). Allerdings kann Oracle ältere Java-Versionen, die unter der GPL veröffentlicht wurden, nicht umbenennen.
Snmcdonald
3
@snmcdonald OpenJDK 6 & 7 sind weiterhin als GPL mit Classpath Exception lizenziert. "Sun" JDK 6 und früher war noch nie GPL. (IANAL)
Tom Hawtin - Tackline

Antworten:

80

Die GPL-Lizenz gilt für die Java-Quelle selbst und nicht für Anwendungen, die mit Java erstellt wurden. Sie sollten sich nur Sorgen machen, wenn Sie die Java-Sprache selbst erweitern / ändern und das Ergebnis als kommerzielles Produkt (oder eine andere Nicht-GPL-Lizenz) weiterverkaufen.

Eran Galperin
quelle
8
Dies ist im besten Fall trüb, weshalb es eine GPL mit Classpath Exception gibt. Auf dem JDK ausgeführter Code ist mit der Java-Bibliothek verknüpft. Mit GPL-Code verknüpfter Code soll GPLed sein (vorbehaltlich der Auslegung der jeweiligen Gerichtsbarkeiten). (Ich bin keine Schicht!)
Tom Hawtin - Tackline
3
@tom - es wird die Standardbibliotheksausnahme genannt - ansonsten müsste der gesamte Code, der in einen GPL-Linux-Kernel gerufen wird, GPL sein
Martin Beckett
4
@Tom: Genau aus diesem Grund gibt es die Klassenpfad-Ausnahme, um sicherzustellen, dass kompilierter Java-Code (der sich beim Herunterladen der OpenJDK-Version und nicht beim Herunterladen der kommerziellen Version auf die GPL-Standardbibliotheken stützt) nicht vorhanden sein muss GPL.
28.
Diese Antwort ist richtig, nur richtig, weil sie unter der GPL mit Klassenpfad-Ausnahme und nicht unter der
unformatierten
19

OpenJDK ist unter der GPL mit Classpath Exception lizenziert . Der Klassenpfad-Ausnahmeteil ist wichtig. Sie können OpenJDK mit Software jeder Lizenz verwenden, nicht nur mit der GPL. Insbesondere können Sie OpenJDK mit proprietärer Software verwenden.

Chris Jester-Young
quelle
2
@Shisoft "Sun" -Implementierungen von Java SE 6 und früheren Versionen sind unter einer Vielzahl von Lizenzen lizenziert, von denen einige kostenlos sind wie Bier, jedoch noch keine GPL-Version. OpenJDKs 6 & 7 (6 ist ein Backward-Port von 7) sind GPLv2 mit Classpath-Ausnahme. Es ist geplant, auch eine "Sun" -Version von JDK7 zu erstellen.
Tom Hawtin - Tackline
17

Java JDK Binary ist NICHT GPL, sondern BCL. Es steht Oracle frei, die Lizenz nach Belieben zu ändern. ( FAQ # 8 ) Vor diesem Hintergrund kann Oracle ältere Java-Versionen, die unter der GPL veröffentlicht wurden , nicht widerrufen .

Aktuelle Informationen finden Sie immer in der Lizenz. Ab heute die Lizenz Staaten :

Interne / interne Verwendung: Die Java SE-Plattform-Binärdateien (JDK und JRE) werden unter der Sun Binary Code License (BCL) mit ergänzenden Bedingungen lizenziert. Für die meisten Entwickler und Endbenutzer sind das binäre JDK und das binäre JRE alles, was erforderlich ist, um die Welt der Java-Technologie kennenzulernen. VERWENDUNG: Das binäre JDK und JRE sind kostenlos von Sun (gemäß den Bestimmungen der BCL) für die Verwendung mit Desktop-PCs erhältlich. Für die Verwendung von JDK oder JRE für eingebettete Geräte und andere Computerumgebungen ist möglicherweise eine Lizenzgebühr von Sun erforderlich. Erfahren Sie mehr über die eingebettete Verwendung von Java SE oder wenden Sie sich an Ihr lokales Sun-Büro, um eine Lizenz zu erhalten.

Denken Sie daran, dass Sie Java SE nicht auf einem eingebetteten Gerät freigeben können (denken Sie an Google Android), wie in den häufig gestellten Fragen angegeben.

Die Java SDK-Quelle ist unter der SCSL- und JPL-Lizenz verfügbar.

Quellcode: Der JDK-Quellcode steht Forschern und anderen Personen zur Verfügung, die sich mit den Einzelheiten des JDK befassen möchten. Jede Version verfügt über eine eigene Lizenz oder einen Lizenzsatz, der häufig die Bedingungen der Sun Community Source License (SCSL) enthält. Sun bietet seit kurzem unter der neuen Java Research License (JRL) einen vereinfachten Zugriff auf den JDK-Quellcode. Beachten Sie, dass Sie in beiden Fällen (SCSL oder JRL) eine kommerzielle Vereinbarung unterzeichnen und die Java-Kompatibilitätsanforderungen erfüllen müssen, wenn Sie Ihr Projekt intern für die produktive Verwendung verwenden oder an andere vertreiben möchten. Wenden Sie sich an Ihr lokales Sun-Büro, um eine Vereinbarung zu erhalten.

snmcdonald
quelle
2
-1 Ihre Formulierung deutete darauf hin, dass die von Sun / Oracle bereitgestellten JDK-Distributionsdownloads einmal GPL waren, aber nicht mehr. Das ist nicht wahr. Sie waren nie GPL. Was unter der GPL veröffentlicht wurde und wird, ist das OpenJDK , das sich von den kommerziellen JDK-Releases unterscheidet. Als Inhaber des Urheberrechts von OpenJDK können sie kommerzielle, nicht unter der GPL stehende Versionen von Derivaten von OpenJDK bereitstellen.
Chris Jester-Young
2
In den OpenJDK-FAQ : "Oracle JDK basiert auf dem OpenJDK-Quellcode. Darüber hinaus enthält es Closed-Source-Komponenten. Das Endergebnis wird unter einer Binärcode-Lizenz lizenziert." Die Closed-Source-Produkte stammen von Dritten, die nicht erneut lizenziert werden konnten. Für eine wirklich kostenlose, vollständige OpenJDK-Distribution gibt es IcedTea (das verwenden die meisten GNU / Linux-Distributoren als Java-Hauptimplementierung).
Chris Jester-Young
5

Sie verwirren mehrere Dinge.

  • Die GPL ist eine Lizenz zur Weitergabe von Software. Selbst wenn der von Ihnen verwendete Java-Compiler GPL-fähig wäre, würde dies Sie nicht daran hindern, Ihre eigene Software zu verbreiten, da sich dies von der Weitergabe von Java unterscheidet. (Und die Java-Laufzeit kann ohnehin separat von Oracle heruntergeladen werden).
  • Die GPL ist nicht mit kommerzieller Software inkompatibel. Einige Antworten hier scheinen "proprietär vs frei (wie in Rede)" mit "kommerziell vs frei (wie in Bier)" zu verwechseln. Es ist wahr, dass beim Verkauf von GPL-Software gewisse Vorsicht geboten ist (Verkauf zählt als "Weiterverteilung"), dies ist jedoch nicht unmöglich.
  • Die Java-Implementierung von Oracle ist nicht GPL-konform. Lesen Sie hier die Lizenz .
  • Open JDK ist eine GPL-Implementierung , die jedoch, wie oben erwähnt, nicht mit kommerzieller Software inkompatibel ist.
Andres F.
quelle
1

Wie ich weiß, können Sie gemäß der aktuellen Lizenz für Java unter BCL (Suns Binary Code License) JDK und JRE kostenlos für die kommerzielle Nutzung verwenden. Verwenden Sie ECLIPSE als Ihre IDE als Ausgangspunkt für die Entwicklung Ihres Java-Codes. Es ist eine OpenSource-Version, für die Sie keine Lizenz benötigen. Wenn Sie an einem Projekt arbeiten, benötigen Sie viele andere Tools, um verschiedene Aufgaben auszuführen. Die meisten erforderlichen Funktionen werden in Eclipse als Plugins (herunterladbar) bereitgestellt.

Sunny Khanuja
quelle
-1

Nach dem Umstieg auf Java BLC unterliegt die gesamte Lizenzierung der Java-Nutzung einer Interpretation, was bedeutet, dass Sie sich mit Oracle in Verbindung setzen müssen, wenn Sie wirklich sicher sein möchten.

Das heißt bezahlen, wenn sie wollen, dass Sie bezahlen. Gemäß BLC kann Java frei für "Allzweck-Desktop-Computer und -Server" (wie in http://www.oracle.com/technetwork/java/javase/terms/license/index.html ) verwendet werden, deren Definition Wörter enthält "Allzweck - Computing".

Ich weiß nicht, ob es sich bei meinem Computer um ein Allzweckcomputer handelt. Sind Sie sicher, dass dies Ihr Computer ist? Oracle hat auch Klauseln wie "für allgemeine Computerfunktionen unter der Kontrolle des Endbenutzers" hinzugefügt.

Wenden Sie sich an Ihre Rechtsabteilung.

netpilot
quelle
5
Das ist FUD. Ich sehe viele Unternehmen in meiner Umgebung, einschließlich namhafter Banken, die Java verwenden, ohne über Lizenzprobleme nachzudenken.
quant_dev
Fragen Sie Google, ob es jemals Probleme verursacht hat. Die Skepsis, Oracle in Bezug auf die Auslegung von Urheberrechten zu vertrauen, ist mit 9 Milliarden US-Dollar begründet. Ich hoffe, Sie haben Recht - aber ich wette, Google hat dasselbe gedacht. Oracle hat in letzter Zeit große Anstrengungen unternommen, um die Lizenz zu ändern. Vermutlich rechnen sie damit, dass sich diese Lizenz auszahlt. Vorbehalt Emptor
Jeff K
-3

Nein . Soweit ich noch weiß, die GPL schränkt nur die Verwendung des Quellcodes des Codes oder Programm mit lizenziert (in diesem Fall das Programm, das läuft Java - Code). Der Java-Code selbst wird jedoch nicht eingeschränkt.

Abbafei
quelle
Ich benutze den Code nicht, nur die Bibliothek. Was ist damit?
Shisoft
1
Ihre Antwort ist nicht eindeutig. Sagen Sie "Nein" zum Titel "Können wir Java für kommerzielle Zwecke verwenden?" Oder "Nein" zum letzten Teil der Frage "Ist es illegal?"?
Bryan Oakley
-3

Sie können eine Anwendung mit der kostenlosen Software gcc kompilieren. Dann können Sie Ihre App nach Belieben lizenzieren, nicht jedoch den gcc-Compiler.

Gast
quelle
3
Als ich das letzte Mal nachgesehen habe, hat gcc Java nicht kompiliert.
Dan Pichelman