Чи можемо ми використовувати Java для комерційного використання?


49

Java - ліцензія GPL (посилання з wikipedia). Я не впевнений, що зможу це використовувати в комерційних проектах. У мене вже є веб-сайт, написаний на Java, і я планую використовувати це для комерційного використання. Це незаконно?



2
@Sathya Це питання стосується використання плагіна GPL у додатку Java. Це питання, мабуть, стосується законності використання самої Java.
Адам Лір

6
@Shisoft З огляду на те, скільки комерційних Java програм там, я не думаю, що вам є про що турбуватися. Ви побачили б принаймні кілька позовів, якби це не було нормально.
Адам Лір

Java SE вже не GPL це BCL. Oracle може змінювати ліцензію за своїм бажанням. (FAQ # 8 oracle.com/technetwork/java/javase/overview/… ). При цьому Oracle не може переробити старіші версії Java, випущені в рамках GPL.
snmcdonald

3
@snmcdonald OpenJDK 6 та 7 продовжують ліцензуватися як GPL за винятком Classpath. "Sun" JDK 6 і новіші версії ніколи не були GPL. (IANAL)
Том Хоутін - тайклін

Відповіді:


80

Ліцензія GPL застосовується до самого джерела Java, а не до програм, створених за допомогою Java. Ви повинні бути стурбовані лише у випадку, якщо ви розширюєте / змінюєте саму мову Java та перепродаєте результат як комерційний продукт (або будь-який інший ліцензію, що не стосується GPL).


8
Це в кращому випадку мутний, саме тому існує GPL з винятком Classpath. Код, що працює на JDK, пов'язаний з бібліотекою Java. Код, пов'язаний з кодом GPL, повинен бути GPLed (за умови тлумачення відповідних юрисдикцій). (Я не шар!)
Том Хоутін - тайклін

3
@tom - це називається винятком зі стандартної бібліотеки - інакше весь код, який викликав ядро ​​GPLed Linux, повинен був бути GPL
Martin Beckett

4
@Tom: саме тому існує виняток classpath, щоб переконатися, що компільований код Java (який покладається на стандартні бібліотеки, які є GPL, якщо ви завантажили реліз OpenJDK, а не якщо ви завантажили комерційний випуск) не повинен бути GPL
jwenting

ця відповідь правильна лише правильна, оскільки вона випущена під GPL за винятком classpath, а не
необмеженою

19

OpenJDK ліцензується під GPL за винятком Classpath . Важлива частина винятку Classpath. Це дозволяє використовувати OpenJDK з програмним забезпеченням будь-якої ліцензії, а не тільки GPL. Зокрема, ви можете використовувати OpenJDK з власним програмним забезпеченням.


2
@Shisoft "Sun", реалізація Java SE 6 і новіших версій, ліцензується за різними ліцензіями, деякі з них безкоштовні, як у пиві, але не [поки] жодного аромату GPL. OpenJDK 6 і 7 (6 - відсталий порт 7), є GPLv2 з винятком Classpath. Він також призначений для випуску JDK7 "Sun".
Том Хотін - тайклін

17

Бінарний Java JDK НЕ є GPL, це BCL. Oracle може змінювати ліцензію за своїм бажанням. ( FAQ # 8 ) Враховуючи це, Oracle не може відновити старіші версії Java, випущені під GPL.

Завжди звертайтесь до Ліцензії для отримання актуальної інформації. На сьогодні в ліцензії зазначено :

Внутрішнє / внутрішнє використання: Бінарні файли платформи Java SE (JDK та JRE) ліцензуються згідно з ліцензією Sun Binary Code (BCL) Sun із додатковими умовами. Для більшості розробників та кінцевих користувачів, бінарний JDK та бінарний JRE - це все, що потрібно для того, щоб випробувати світ технологій Java. ВИКОРИСТАННЯ: Бінарні JDK та JRE доступні безкоштовно від Sun (за умовами BCL) для використання з настільними персональними комп'ютерами. Використання JDK або JRE для вбудованих пристроїв та інших обчислювальних середовищ може вимагати ліцензійної плати від Sun. Докладніше про вбудоване використання Java SE або зв’яжіться з місцевим офісом Sun, щоб отримати ліцензію.

Майте на увазі, що ви не можете випускати Java SE на вбудованому пристрої (думаю, Android Android), як зазначено в FAQ.

Джерело Java SDK доступне під ліцензією SCSL та JPL.

Вихідний код: вихідний код JDK доступний для дослідників та інших зацікавлених у вивченні деталей JDK. Кожен випуск має свою власну ліцензію або набір ліцензій, який часто включає умови ліцензії джерела Sun Community (SCSL). Sun нещодавно почала пропонувати спрощений доступ до вихідного коду JDK відповідно до нової ліцензії Java Research (JRL). Зауважте, що в будь-якому випадку (SCSL або JRL), якщо ви вирішили використовувати свій проект внутрішньо для продуктивного використання або розповсюджувати ваш продукт іншим, ви повинні підписати комерційну угоду та відповідати вимогам сумісності Java. Зверніться до місцевого офісу Sun, щоб отримати угоду.


2
-1 Ваша редакція передбачає, що завантаження дистрибутива JDK, надані Sun / Oracle, колись було GPL, але вже не. Це не правда. Вони ніколи не були GPL. Те, що було і є, випущене під GPL, - це OpenJDK , яке відрізняється від комерційних версій JDK. Як власник авторських прав OpenJDK, вони можуть надавати комерційні, не GPL, випуски похідних OpenJDK.
Кріс Єстер-Янг

2
Крім того, у FAQJ OpenJDK : "JDK Oracle базується на вихідному коді OpenJDK. Крім того, він містить компоненти із закритим кодом. Кінцевий результат ліцензується за ліцензією бінарного коду." Матеріали із закритим кодом - це матеріали від сторонніх осіб, які вони не могли отримати дозволом. Для по-справжньому безкоштовного, повного розповсюдження OpenJDK є IcedTea (саме це використовує більшість дистрибуторів GNU / Linux в якості основної реалізації Java).
Кріс Єстер-Янг

5

Ви плутаєте кілька речей.

  • GPL - це ліцензія, що стосується перерозподілу програмного забезпечення. Навіть якщо компілятор Java, який ви використовували, був GPL'ed, це не завадить вам розповсюджувати власне програмне забезпечення, оскільки це відрізняється від перерозподілу Java. (І навіть, час виконання Java можна завантажити окремо від Oracle).
  • GPL не сумісний з комерційним програмним забезпеченням. Деякі відповіді тут, мабуть, плутають "власність проти безкоштовного (як у мовленні)" з "комерційним проти безкоштовного (як у пиві)". Це правда, потрібно бути обережним при продажі програмного забезпечення GPL'ed (продаж вважається "перерозподілом"), але це не неможливо.
  • Реалізація Java Oracle не є GPL'ed. Прочитайте його ліцензію тут .
  • Open JDK - це реалізація GPL'ed , але, як було сказано вище, це не робить його несумісним з комерційним програмним забезпеченням.

1

Як мені відомо, згідно з чинною ліцензією Java знаходиться під BCL (ліцензія бінарного коду Sun), ви можете використовувати JDK та JRE безкоштовно для комерційного використання. Використовуйте ECLIPSE як IDE в якості точки переходу, щоб розробити код Java. Це відкритий джерело, тож вам не потрібно жодного огляду. Під час роботи над проектом вам знадобляться багато інших інструментів для виконання різних матеріалів. Більшість необхідних функцій надаються у вигляді затемнень (завантажуваних) у затемненні.


-1

Після переходу на Java BLC все ліцензування використання Java підлягає тлумаченню, що означає "зв’яжіться з Oracle, якщо ви хочете, щоб бути впевненим".

Це означає платити, якщо вони хочуть, щоб ви заплатили. Згідно з BLC, Java можна вільно використовувати для "Навчальних комп'ютерів та серверів загального призначення" (як у http://www.oracle.com/technetwork/java/javase/terms/license/index.html ), визначення яких включає слова "обчислення загального призначення".

Я не знаю, чи моє обчислення є обчисленням загального призначення - ви впевнені, що це ваше? Oracle також додали пункти типу "використовуються для загальних обчислювальних функцій під контролем кінцевих користувачів".

Зверніться до юридичного відділу.


5
Це FUD. Я бачу багато компаній навколо мене, включаючи банки з великими іменами, які використовують Java, не замислюючись про проблеми з ліцензуванням.
Quant_dev

Запитайте у Google, чи це коли-небудь спричиняло проблеми. Скептицизм довіри Oracle щодо їх тлумачення авторських прав гарантований у розмірі 9 мільярдів доларів. Я сподіваюся, що ви праві - але я думаю, що Google подумав те саме. Нещодавно Oracle багато чого змінив, змінивши ліцензію, тому, імовірно, вони очікують, що ліцензія отримає $$. caveat emptor
Jeff K

-3

Ні. Наскільки я зараз знаю, GPL обмежує лише використання вихідного коду коду або програми, ліцензованої на нього (у цьому випадку програма, яка працює з кодом Java). Але він не обмежує сам код Java.


Я не використовую код, а лише його бібліотеку. Що про це?
Shisoft


1
Ваша відповідь неоднозначна. Ви говорите "ні" заголовку "чи можемо ми використовувати Java для комерційного використання", або ти кажеш "ні" останній частині питання "це незаконно"?
Брайан Оуклі

-3

Ви можете скласти додаток за допомогою gcc, що є безкоштовним програмним забезпеченням. Тоді ви можете ліцензувати свою програму як завгодно, але не компілятор gcc.


3
Востаннє я перевіряв, gcc не компілював Java.
Ден Пішельман
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.