Perché Oracle JDK 9 download finisce così presto? [chiuso]


Chiuso . Questa domanda ha bisogno di dettagli o chiarezza. Attualmente non accetta risposte.

Vuoi migliorare questa domanda? Aggiungere dettagli e chiarire il problema di modifica di questo post.

Chiuso 4 mesi fa .

Migliora questa domanda

Volevo installare JDK 9 sulla mia macchina, ho visitato la pagina di download ufficiale di JDK e sono rimasto sorpreso di vedere,

Java SE 9 ha raggiunto la fine del supporto. Gli utenti di Java SE 9 dovrebbero passare a Java SE 10. Si prega di visitare la nostra pagina di download Java SE per ottenere la versione corrente di Java SE. Verrai reindirizzato alla pagina di download di Java SE in ... secondo. Si prega di aggiornare i segnalibri alla pagina di download Java SE.

Ho fatto un po ' di cronologia delle versioni di Google e Java, ecc. Ma non riusciva a trovare alcuna ragione concreta.

Ho un paio di domande -

  1. Oracle sta ancora supportando JDK 1.8, ma ha smesso di rilasciare aggiornamenti a JDK 9, perché?
  2. Dovrei continuare a utilizzare JDK 1.8 per qualche tempo e quindi passare direttamente a JDK 10?
Author: Red Boy, 2018-05-14

2 answers

In passato, le versioni principali di Java spesso tendevano ad essere caricate con funzionalità di vasta portata che avevano un enorme impatto sul codice che si poteva e si doveva scrivere, come i generici (Java 5) e i costrutti funzionali (Java 8).

Con Java 9 Oracle ha introdotto un nuovo sistema di modularizzazione (project Jigsaw), che ha anche un impatto enorme sull'architettura JVM (anche se, non tanto sulla sintassi del linguaggio). Hanno dovuto posticipare il rilascio di Java 9 due volte a causa di disaccordi sul implementazione di questa funzione con altri membri influenti della comunità Java.

Presumibilmente traendo una lezione da questo, Oracle ha deciso di rivedere lo stile di sviluppo per Java per essere più incrementale o "agile", se lo si desidera. Invece di avere funzionalità caricate versioni principali che a volte possono richiedere molti anni per finire, vogliono pubblicare versioni principali con meno nuove funzionalità ciascuna in un programma di rilascio fisso ogni sei mesi.

Java 9 e Java 10 sono i primi due le versioni pianificate con questo nuovo modello di rilascio e Java 9 sono già state deprecate con il rilascio di Java 10. Java 11 , che è stato rilasciato a settembre 2018 è un Long Term Support (LTS) rilascio con supporto fino a quando 2026. Questo è molto simile a quello a cui molti sono abituati dal modello di rilascio di Ubuntu (Su una nota a margine, hanno persino pianificato di sostituire i numeri di versione con qualcosa che coinvolgesse l'anno e il mese di rilascio o giù di lì, simile a quello che sta facendo Canonical con Ubuntu, ma ha abbandonato quell'idea per qualche motivo).

L'utilizzo di una versione non LTS di Java implica ora l'impegno di aggiornare il software che utilizza il JDK ogni 6 mesi. Non dovrebbe essere così coinvolto come la migrazione del codice da una versione Java principale a un'altra in passato perché, come descritto, i cambiamenti della lingua dovrebbero avvenire in modo più incrementale, ma è sicuramente qualcosa da considerare. Se non vuoi fare questo impegno, dovresti attenersi alle versioni LTS, che significa attenersi a Java 8 o Java 11.

Per un nuovo progetto "greenfield", Java 11 è probabilmente la scelta migliore ormai. Ma potrebbe essere necessario attenersi a Java 8 se la toolchain da utilizzare non supporta ancora completamente Java 11.

Apparentemente in futuro Oracle vuole rilasciare una versione LTS ogni tre anni o ogni 6a release, quindi la prossima release LTS da aspettarsi dopo Java 11 è Java 17 a settembre 2021 .

 25
Author: anothernode, 2019-10-12 16:47:18

Oracle ha eseguito la transizione alle versioni con timebox. Ciò significa che otterrai una nuova versione Java ogni 3 mesi e una versione a lungo termine ogni pochi anni.

Ci si aspetta che le versioni a lungo termine siano supportate per 3 anni dopo la prossima release, quindi non mi aspetterei una nuova release LTS fino a qualche tempo alla fine del 2019 o all'inizio del 2020, dato che dicembre 2020 è la fine del supporto per JDK 8.

 3
Author: Edwin Buck, 2018-05-14 15:26:38