Czy Java jest płatna? Czym różni się Oracle JDK od Open JDK?

Java to obiektowy język programowania ogólnego zastosowania, którego przez wiele lat można było używać do celów komercyjnych w 100% bezpłatnie. Obecnie wiele osób zastanawia się, czy Java jest płatna. W poniższym artykule sprawdzamy, czy obecnie możliwe jest korzystanie z bezpłatnej wersji Java.

 

 

Krótka historia Javy

 

Twórcami języka Java są James Gosling, Mike Sheridan i Patrick Naughton. Ich projekt ujrzał światło dzienne w czerwcu 1991 roku i był zatytułowany „Green”. Początkowo język Java miał być zaprojektowany dla telewizji interaktywnej, jednak w tamtych czasach był on zbyt zaawansowany dla tej branży. W Javie zastosowana została składnia w stylu C / C++, która dla programistów systemów i aplikacji nie była nowością.

W zamyśle twórców Java miała być językiem obiektowym. W programie miała być zapewniona możliwość definiowania różnych abstrakcyjnych elementów odpowiednio podpisanych i odzwierciedlających elementy świata rzeczywistego. Podjęta przez nich decyzja była bardzo dobrym pomysłem, ponieważ programowanie obiektowe po dziś dzień stosowane jest na szeroką skalę przez specjalistów z całego świata.

Pierwszą wersję Javy opublikowano w 1996 roku i przydzielono jej znacznik 1.0. Początki nie były łatwe, ponieważ w zaprojektowanym języku pojawiały się błędy. Poprawiono je dość szybko i uzupełniono go o nowe biblioteki i model zdarzeń GUI. Poprawkę zatytułowano jako Java 1.1.

W kolejnych wersjach Javy dodawano następne ważne funkcjonalności oraz zwiększano wydajność bibliotek standardowych. Największy postęp odnotowano w wersji 5 – wówczas wprowadzone zostały Klasy generyczne oraz import statyczny. Kolejną ważną aktualizacją była edycja 8, kiedy to wprowadzone zostały elementy programowania funkcyjnego.

 

 

Java – darmowa czy płatna?

 

W czerwcu 2018 roku firma Oracle ogłosiła, że przestanie udostępniać publiczne aktualizacje języka Java. Tym samym oznaczało to, że wszystkie aktualizacje od wersji Java 8 Update 211 do użytku komercyjnego będą płatne. Od stycznia 2019 roku darmowe miało pozostać wyłącznie wykorzystywanie oprogramowania do celów osobistych oraz na użytek deweloperski (np. do rozwijania, testowania lub demonstrowania aplikacji). Klientom zaproponowano model subskrypcyjny o nazwie Oracle Java SE Subscription. Jednocześnie darmowa miała pozostać wersja Open JDK.

Po pewnym czasie firma zmieniła jednak swoją decyzję. Począwszy od 14 września 2021 roku Java znów stała się w pełni darmowa na nowej licencji o nazwie Oracle No-Fee Terms and Conditions (NFTC). 

 

 

Czym jest Oracle JDK?

 

Od 2019 roku Oracle JDK było wydawane na nowej licencji, która nie zezwalała na użycie Javy do użytku komercyjnego, np. do procesowania danych bądź używania w systemach produkcyjnych. Darmowe stało się wyłącznie używanie Javy do celów demonstracyjnych.

Wcześniej wszyscy klienci otrzymywali wszystkie elementy oprogramowania za darmo. Nową wersję Javy publikowano co około 2 lata. Nowe funkcjonalności były wszechstronnie przetestowane. Oferowano także funkcję wstecznej kompatybilności, co było doceniane przez klientów z całego świata. Javę uznawano za język darmowy, bezpieczny oraz w pełni stabilny.

Wraz ze zmianami z 2019 roku wprowadzono także Open JDK, czyli darmową wersję Javy, jednak z zastrzeżeniem, że poprawki dotyczące bezpieczeństwa będą dostępne tylko przez 6 miesięcy. Na Oracle spadła spora fala krytyki, czego dowodem była zmiana wcześniejszej decyzji. Od 14 września 2021 roku Java znów stała się w pełni darmowa w związku z wprowadzeniem nowej licencji Oracle No-Fee Terms and Conditions (NFTC).

Obecna wersja Oracle JDK 17 jest darmowa. Trzeba jednak pamiętać o tym, że licencja Oracle No-Fee Terms and Conditions ma dla niej termin ważności. Wynosi on 3 lata. Po tym czasie konieczne będzie wykupienie licencji komercyjnej bądź zainstalowanie nowej wersji Oracle JDK w ramach wspomnianej licencji – jeśli taka się pojawi.

Jednocześnie w dalszym ciągu możliwe jest wykupienie JDK 17 na zasadach starej licencji (płatnej). Wówczas Oracle zaoferuje nam dodatkowe wsparcie oraz dodatkowe funkcjonalności, takie jak Advanced Management Console, GraalVM Enterprise czy Java Management Service.

 

 

Czym jest Open JDK?

 

Open JDK to w pełni darmowa wersja Javy zadedykowana tym podmiotom, które w związku z wprowadzeniem ograniczeń w komercyjnym wykorzystaniu wersji Oracle JDK w 2019 roku chciały w dalszym ciągu korzystać z Javy bez opłat. Open JDK to otwartoźródłowa wersja Javy, która charakteryzuje się krótkim okresem wsparcia dla użytkowników. Jest ona oferowana na licencji GPL z Classpath Extension. Firmy mogą bez przeszkód używać jej do tworzenia aplikacji produkcyjnych.

 

 

Różnice pomiędzy Oracle JDK i Open JDK?

 

Jakie są różnice między Oracle JDK i Open JDK? Warto wiedzieć o tym, że począwszy od wersji 11 Oracle JDK budowane jest na bazie Open JDK, dlatego pod względem technicznym nie ma między nimi różnic. 

Trzeba jednak zaznaczyć, że Oracle JDK jest wydajniejsze i stabilniejsze, dlatego specjaliści zalecają, aby w celach komercyjnych korzystać przede wszystkim z tej wersji. Nowe wersje Open JDK są wydawane co 6 miesięcy, jednak okres wsparcia jest stosunkowo krótki. Z kolei nowe wydania Oracle JDK następują co 3 lata, a ze wsparcia można korzystać przez długi czas.

 

 

Ile kosztuje licencja Oracle JDK?

 

Obecnie w związku z decyzją podjętą przez firmę Oracle w 2021 roku korzystanie z wersji Oracle JDK 17 jest w pełni darmowe. Możliwość bezpłatnego korzystania z oprogramowania przysługuje przez rok od wydania następnej wersji LTS.

„Oracle wprowadza zmiany, które przyniosą znaczne korzyści społeczności Java, skracając długoterminowe wersje wsparcia do dwóch lat i wprowadzając nową, bardziej elastyczną licencję, która zapewnia bezpłatne wykorzystanie produkcyjne Oracle JDK przez dłuższy czas”

– mówił we wrześniu 2021 roku Arnal Dayaratna, wiceprezes ds. badań w dziale rozwoju oprogramowania w IDC.

 

 

Czy z Open JDK można bezpłatnie korzystać w komercyjnych projektach?

 

Tak. Wersję Open JDK można bez żadnych przeszkód wykorzystywać w komercyjnych projektach bez ponoszenia dodatkowych kosztów. Oracle Open JDK jest dostarczane bezpłatnie na zasadach licencji open-source General Public License (GPL) od 2017 roku.