Java znów darmowa! Dlaczego Oracle wycofuje się z płatnego JDK?

  •  
  •  
  •  
  •  
  •  
  •  

Java znów darmowa! Dlaczego Oracle wycofuje się z płatnego JDK?

Od 14 września 2021 roku Java jest znów w pełni darmowa na nowej licencji Oracle No-Fee Terms and Conditions (NFTC). Przypomnijmy, że historia zatacza koło i wracamy do czasu z przed stycznia 2019 roku gdzie jeszcze wtedy JDK 8 było całkowicie darmowe i nie potrzeba było wykupywać wsparcia aby otrzymywać poprawki do najbardziej popularnej wersji Javy w tamtym okresie. Jeśli pragniesz przypomnieć sobie szczegóły tamtej zmiany zapraszam do artykułu, który to dokładnie opisuje: Czy Java jest nadal darmowa? Jeśli nie, to co teraz? Które JDK wybrać?

Dlaczego Oracle wycofuje się z płatnego JDK?

Decyzja o wydaniu wersji 11 na całkowicie nowej komercyjnej licencji OTN SE i jednocześnie wydawanie Open JDK całkowicie za darmo nie mogło skończyć się dobrze. Wycofanie się z tej praktyki poprzez ponowne przywrócenie darmowej Javy od wersji 17 jest moim zdaniem przyznaniem się do błędu jakim była próba zmuszenia klientów do wykupywania wsparcia technicznego od Oracle. Puszka pandory została jednak otwarta. Pojawiło się wiele alternatywnych dystrybucji JDK od wielkich koncernów jak Amazon, IBM, RedHat a ostatnio nawet od samego Microsoft. Wiele firm bez zastanowienia (niektóre po długich analizach i zastanowieniu) postanowiło zmigrować się na inne dystrybucje. Oczywiście taki proces migracji jest czasochłonny i pracochłonny a zatem nie jest bez kosztowy, więc niby dlaczego teraz po tym wysiłku te firmy miałby powrócić do oryginalnego (tym razem znów darmowego) Oracle JDK?

Istnieje też inna teoria przedstawiona przez Redress Compliance – Oracle Licensing Experts twierdząca, że powodem zrezygnowania z płatnej Javy jest zbyt duży popyt na support od Oracle, którego właściciel Javy się nie spodziewał i nie był na to odpowiednio przygotowany. Wspomniana firma twierdzi, że wiedzą „z pewnych źródeł”, że sprzedawcy Oracle zostali przytłoczeni ilością zapotrzebowania na support a sami sprzedawcy mają niewystarczającą wiedzę na temat licencji. Jak dla mnie nie jest to do końca przekonywujące.

Najbardziej jednak oficjalny powód zmiany możemy wyczytać z artykułu Donald-a Smith-a z oficjalnego bloga Oracle gdzie senior dyrektor do spraw produktu uzasadnia powrót do darmowej Javy jako spełnienie oczekiwań programistów, uczelni oraz przedsiębiorstw:

Providing Oracle OpenJDK builds under the GPL was highly welcomed, but feedback from developers, academia and enterprises was that they wanted the trusted, rock-solid Oracle JDK under an unambiguously free terms license, too…

https://blogs.oracle.com/java/post/free-java-license

Udział Oracle JDK w rynku

Warto zauważyć, że według Snyk JVM Ecosystem Report 2021 Oracle JDK (23%) plasuje się dopiero na trzecim miejscu za AdoptOpenJDK (45%) jak i Oracle Open JDK (28%). Co obrazuje w jakimś stopniu, jak wielu zdecydowało się zmigrować na darmową wersję Javy. Oczywiście to tylko dane ankietowe zebrane z pewnej grupy programistów. Pełny raport: JVM Ecosystem Report 2021.

Dlaczego wsparcie dla wersja Javy 8 oraz używanie JDK 11 pozostaje nadal płatne?

Oczywiście pomimo tego, że Oracle próbuje naprawić sytuację po tej szkodliwej decyzji z przed 2019 roku to nie może sobie pozwolić aby naprawić to całkowicie i znieść restrykcję na wersję 11. Firmy, które wykupiły support a nie zmigrowały się na inne otwarte JDK zostały by postawione w bardzo niezręcznej sytuacji.

Oracle JDK 17 w wersji płatnej

Oracle JDK 17 również jest dostępne na zasadach starej licencji (komercyjnej), w której dostajemy wsparcie od Oracle oraz:

  • Java Management Service
  • Advanced Management Console
  • GraalVM Enterprise

Kiedy darmowa Java 17 staje się znów płatna.

Oracle JDK 17 jest darmowa. To fakt. Jednak licencja „Oracle No-Fee Terms and Conditions” dla JDK 17 ma termin ważności!

Oracle JDK 17 and future JDK releases are provided under a free-to-use license until a full year after the next LTS release

https://www.oracle.com/uk/news/announcement/oracle-releases-java-17-2021-09-14/

Aktualnie LTS wychodzi co 3 lata więc teoretycznie Oracle JDK 17 na produkcji za darmo możemy używać rok po wydaniu następnego LTS (razem 4 lata). Po tym czasie Oracle JDK 17 przechodzi automatycznie na starą licencję OTN SE (to ta sama licencja na której jest Oracle JDK 11).

Oracle will use the NFTC for JDK 17 and later releases. LTS releases, such as JDK 17, will receive updates under this license for one year after the release of the subsequent LTS. After the free use license period, Oracle intends to use the OTN License, the same currently used for Java 8 and 11 LTS releases, for subsequent updates.

Oracle Java SE Licensing FAQ

Co ciekawe Oracle zaproponował skrócenie czasu wydawania kolejnych Long Term Support wersji z 3 do 2 lat – Oracle Proposes Shorter Java LTS Cycle of Two Years. Narazie jest to propozycja ale jeśli zostanie zaakceptowana to czas używania darmowej Oracle JDK 17 skróci się z 4 do 3 lat.

Podsumowanie

Oracle wpada w bardzo ciekawy trend. Czyżby z każdą nowa wersji Javy LTS (Long Term Support) Oracle wypuszczał też nowa wersję licencji? Co nas czeka przy JDK 21? Tego nie wie chyba nawet sam Oracle.

  •  
  •  
  •  
  •  
  •  
  •  

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *