Possiamo usare Java per uso commerciale?


49

Java è la licenza GPL (riferimento da Wikipedia). Non sono sicuro di poterlo utilizzare in progetti commerciali. Ho già un sito Web scritto in Java e ho intenzione di usarlo per uso commerciale. È illegale?



2
@Sathya Questa domanda riguarda l'uso di un plug-in GPL in un'app Java. Questa domanda sembra riguardare la legalità dell'uso di Java stesso.
Adam Lear

6
@Shisoft Considerando quante applicazioni Java commerciali ci sono, non credo che tu abbia nulla di cui preoccuparti. Vedresti almeno alcune cause se non fosse ok.
Adam Lear

Java SE non è più GPL ma BCL. Oracle è libera di modificare la licenza a proprio piacimento. (FAQ # 8 oracle.com/technetwork/java/javase/overview/… ). Detto questo, Oracle non può modificare le versioni precedenti di Java rilasciate sotto licenza GPL.
Snmcdonald,

3
@snmcdonald OpenJDK 6 e 7 continuano ad essere concessi in licenza come GPL con eccezione del percorso di classe. "Sun" JDK 6 e precedenti non sono mai stati GPL. (IANAL)
Tom Hawtin - affronta il

Risposte:


80

La licenza GPL si applica alla fonte Java stessa, non alle applicazioni create usando Java. Dovresti preoccuparti solo se estendi / modifichi il linguaggio Java stesso e rivendi il risultato come prodotto commerciale (o qualsiasi altra licenza non GPL).


8
Questo è al meglio oscuro, motivo per cui esiste GPL con Classpath Exception. Il codice in esecuzione su JDK è collegato alla libreria Java. Il codice collegato al codice GPL dovrebbe essere GPLed (soggetto all'interpretazione delle giurisdizioni pertinenti). (Non sono un livello!)
Tom Hawtin - affronta il

3
@tom - si chiama l'eccezione della libreria standard - altrimenti tutto il codice che chiamava in un kernel Linux GPL dovrebbe essere GPL
Martin Beckett,

4
@ Tom: ecco perché esiste l'eccezione classpath, per garantire che il codice Java compilato (tutto basato sulle librerie standard che sono GPL se hai scaricato la versione OpenJDK, non se hai scaricato la versione commerciale) non deve essere GPL.
jwenting,

questa risposta è corretta solo perché è stata rilasciata sotto GPL con l'eccezione classpath e non GPL non
elaborato

19

OpenJDK è concesso in licenza in GPL con eccezione del percorso di classe . La parte Eccezione percorso di classe è importante. Ti consente di utilizzare OpenJDK con software di qualsiasi licenza, non solo GPL. In particolare, è possibile utilizzare OpenJDK con software proprietario.


2
@Shisoft Le implementazioni "Sun" di Java SE 6 e precedenti sono concesse in licenza con una varietà di licenze, alcune gratuite come nella birra, ma non [ancora] alcun sapore di GPL. OpenJDKs 6 e 7 (6 è una porta all'indietro di 7), sono GPLv2 con eccezione del percorso di classe. È destinato a fare anche una versione "Sun" di JDK7.
Tom Hawtin - affronta il

17

Il binario Java JDK NON è GPL, è BCL. Oracle è libera di modificare la licenza a proprio piacimento. ( FAQ # 8 ) Detto questo, Oracle non può rinnegare le versioni precedenti di Java rilasciate sotto licenza GPL.

Consultare sempre la Licenza per informazioni aggiornate. Ad oggi la licenza afferma :

Uso interno / interno: i binari della piattaforma Java SE (JDK e JRE) sono concessi in licenza con la licenza del codice binario Sun (BCL) con condizioni supplementari. Per la maggior parte degli sviluppatori e degli utenti finali, il JDK binario e il JRE binario sono tutto ciò che serve per sperimentare il mondo della tecnologia Java. UTILIZZO: JDK e JRE binari sono disponibili gratuitamente da Sun (secondo i termini del BCL) per l'uso con i personal computer desktop. L'uso di JDK o JRE per dispositivi embedded e altri ambienti informatici potrebbe richiedere un canone di licenza da Sun. Ulteriori informazioni sull'uso incorporato di Java SE o contattare l'ufficio Sun locale per ottenere una licenza.

Tieni presente che non puoi rilasciare Java SE su un dispositivo incorporato (pensa a Google Android) come indicato nelle FAQ.

Il sorgente Java SDK è disponibile con licenza SCSL e JPL.

Codice sorgente: il codice sorgente JDK è disponibile per i ricercatori e altri interessati ad esplorare i dettagli del JDK. Ogni versione ha una propria licenza o un set di licenze che spesso include i termini della licenza Sun Community Source (SCSL). Sun ha recentemente iniziato a offrire un accesso semplificato al codice sorgente JDK con una nuova Java Research License (JRL). Si noti che in entrambi i casi (SCSL o JRL), se si decide di utilizzare il progetto internamente per un uso produttivo o distribuire il prodotto ad altri, è necessario firmare un accordo commerciale e soddisfare i requisiti di compatibilità Java. Contattare l'ufficio Sun locale per ottenere un accordo.


2
-1 La tua formulazione suggeriva che i download della distribuzione JDK forniti da Sun / Oracle fossero una volta GPL, ma non più. Questo non è vero. Non sono mai stati GPL. Ciò che è stato ed è rilasciato sotto licenza GPL è OpenJDK , che è diverso dalle versioni commerciali di JDK. In quanto detentori del copyright di OpenJDK, sono liberi di fornire rilasci commerciali, non GPL, di derivati ​​di OpenJDK.
Chris Jester-Young,

2
Inoltre, nelle FAQ di OpenJDK : "Oracle JDK si basa sul codice sorgente OpenJDK. Inoltre, contiene componenti di origine chiusa. Il risultato finale è concesso in licenza con una licenza di codice binario." La roba di origine chiusa è roba di terze parti che non è stato possibile ottenere in licenza. Per una distribuzione OpenJDK veramente libera e completa, c'è IcedTea (che è quello che la maggior parte dei distributori GNU / Linux usano come loro principale implementazione Java).
Chris Jester-Young,

5

Stai confondendo diverse cose.

  • La GPL è una licenza relativa alla ridistribuzione del software. Anche se il compilatore Java che hai usato fosse GPL, questo non ti impedirebbe di distribuire il tuo software, perché è diverso dalla ridistribuzione di Java. (E il runtime Java può essere scaricato separatamente da Oracle, comunque).
  • La GPL non è incompatibile con il software commerciale. Alcune risposte qui sembrano confondere "proprietario vs libero (come nel discorso)" con "commerciale vs libero (come nella birra)". È vero che bisogna prestare attenzione quando si vendono software GPL (la vendita conta come "ridistribuzione"), ma non è impossibile farlo.
  • L'implementazione di Oracle di Java non è GPL. Leggi la sua licenza qui .
  • Open JDK è un'implementazione di GPL , ma come menzionato sopra, questo non lo rende incompatibile con il software commerciale.

1

Come so, secondo l'attuale licenza Java è sotto BCL (Sun's Binary Code License), è possibile utilizzare JDK e JRE gratuitamente per uso commerciale. Utilizzare ECLIPSE come IDE come punto di partenza per sviluppare il codice Java. È open-source quindi non hai bisogno di alcuna indulgenza per lo stesso. Quando stai lavorando al progetto, avrai bisogno di molti altri strumenti per eseguire varie cose. La maggior parte delle funzioni richieste sono fornite come plug-in (scaricabili) in eclipse.


-1

Dopo il passaggio a Java BLC, l'intera licenza d'uso di Java è soggetta a interpretazione, il che significa "contattare Oracle se si desidera essere veramente sicuri".

Ciò significa pagare se vogliono che tu paghi. Secondo BLC, Java può essere liberamente utilizzato per "Computer e server desktop per scopi generici" (come in http://www.oracle.com/technetwork/java/javase/terms/license/index.html ), la cui definizione include parole "informatica generale".

Non so se il mio computer sia un computer generico - sei sicuro che lo sia? Oracle ha anche aggiunto clausole come "utilizzate per funzioni di elaborazione generali sotto il controllo dell'utente finale".

Verificare con il proprio ufficio legale.


5
Questo è FUD. Vedo molte aziende intorno a me, comprese le banche di grandi nomi, che usano Java senza pensare ai problemi di licenza.
quant_dev,

Chiedi a Google se ha mai causato problemi. Lo scetticismo nel fidarsi di Oracle riguardo alla loro interpretazione dei diritti d'autore è garantito per $ 9 miliardi. Spero che tu abbia ragione, ma scommetto che Google ha pensato lo stesso. Di recente Oracle ha fatto un grosso problema con la modifica della licenza, quindi presumibilmente si aspettano che la licenza produca $$. caveat emptor
Jeff K,

-3

No. Per quanto ne so attualmente, la GPL limita solo l'uso del codice sorgente del codice o del programma con licenza (in questo caso, il programma che esegue il codice Java). Ma non limita il codice Java stesso.


Non uso il codice, ma solo le sue librerie.
Shisoft,


1
La tua risposta è ambigua. Stai dicendo "no" al titolo "possiamo usare Java per uso commerciale" o stai dicendo "no" all'ultima parte della domanda "è illegale"?
Bryan Oakley,

-3

Puoi compilare un'applicazione usando gcc, che è un software gratuito. Quindi puoi concedere in licenza la tua app come preferisci, ma non il compilatore gcc.


3
L'ultima volta che ho controllato, gcc non ha compilato Java.
Dan Pichelman,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.