1Oak

Τον Ιούνιο του 1991, οι James Gosling, Mike Sheridan και Patrick Naughton ξεκίνησαν το έργο της γλώσσας Java. Η Java σχεδιάστηκε αρχικά για διαδραστική τηλεόραση, αλλά ήταν πολύ προηγμένη για τη βιομηχανία ψηφιακής καλωδιακής τηλεόρασης εκείνη την εποχή. Η γλώσσα ονομάστηκε αρχικά Oak από μια βελανιδιά που βρισκόταν έξω από το γραφείο του Gosling. Αργότερα το έργο πήρε το όνομα Green και τελικά μετονομάστηκε σε Java, από τον καφέ Java, τον καφέ από την Ινδονησία.

2Αρχική Ανάπτυξη

Στις 23 Μαΐου 1995, η Java αναπτύχθηκε αρχικά από τον James Gosling στη Sun Microsystems και κυκλοφόρησε ως βασικό στοιχείο της πλατφόρμας Java της Sun Microsystems.

3Java 1.0

Στις 23 Ιανουαρίου 1996, η Sun Microsystems κυκλοφόρησε την πρώτη δημόσια υλοποίηση ως Java 1.0, η οποία υποσχέθηκε λειτουργικότητα Write Once, Run Anywhere (WORA), παρέχοντας δωρεάν χρόνους εκτέλεσης σε δημοφιλείς πλατφόρμες.

4JDK 1.1

Στις 19 Φεβρουαρίου 1997, η Sun Microsystems κυκλοφόρησε το JDK 1.1.

5De Facto Πρότυπο

Το 1997, η Sun Microsystems προσέγγισε τον οργανισμό προτύπων ISO/IEC JTC 1 και αργότερα την Ecma International για να επισημοποιήσει την Java, αλλά σύντομα αποχώρησε από τη διαδικασία. Η Java παραμένει ένα de facto πρότυπο, ελεγχόμενο μέσω της διαδικασίας Java Community Process.

6Μήνυση

Το 1997, η Sun μήνυσε τη Microsoft, ισχυριζόμενη ότι η υλοποίηση της Microsoft δεν υποστήριζε RMI (Java Remote Method Invocation) ή JNI (Java Native Interface) και είχε προσθέσει δικά της χαρακτηριστικά ειδικά για την πλατφόρμα, καθώς η άδεια εμπορικού σήματος της Sun για τη χρήση της επωνυμίας Java επιμένει ότι όλες οι υλοποιήσεις πρέπει να είναι συμβατές.

7J2SE 1.2

Στις 8 Δεκεμβρίου 1998, η Sun Microsystems κυκλοφόρησε το J2SE 1.2.

8J2SE 1.3

Στις 8 Μαΐου 2000, η Sun Microsystems κυκλοφόρησε το J2SE 1.3.

9Κερδίζοντας τον Διακανονισμό

Το 2001, μετά τη μήνυση κατά της Microsoft το 1997, η Sun κέρδισε έναν διακανονισμό ύψους 20 εκατομμυρίων δολαρίων ΗΠΑ, καθώς και δικαστική εντολή που επέβαλλε τους όρους της άδειας από τη Sun. Ως αποτέλεσμα, η Microsoft δεν διαθέτει πλέον την Java με τα Windows.

10J2SE 1.4

Στις 6 Φεβρουαρίου 2002, η Sun Microsystems κυκλοφόρησε το J2SE 1.4.

11Generics

Το 2004, τα generics προστέθηκαν στη γλώσσα Java ως μέρος του J2SE 5.0.

12J2SE 5.0

Στις 30 Σεπτεμβρίου 2004, η Sun Microsystems κυκλοφόρησε το J2SE 5.0.

13Μετονομασμένες Εκδόσεις

Το 2006, για λόγους μάρκετινγκ, η Sun μετονόμασε τις νέες εκδόσεις J2 σε Java EE (Enterprise Edition που περιελάμβανε τεχνολογίες και API για εταιρικές εφαρμογές που εκτελούνται συνήθως σε περιβάλλοντα διακομιστών), Java ME (Micro Edition που διέθετε API βελτιστοποιημένα για εφαρμογές κινητών) και η έκδοση για επιτραπέζιους υπολογιστές, J2SE, μετονομάστηκε σε Java SE (Java Standard Edition).

14Εικονική Μηχανή Java

Στις 13 Νοεμβρίου 2006, η Sun Microsystems κυκλοφόρησε το μεγαλύτερο μέρος της εικονικής μηχανής Java (JVM) ως ελεύθερο λογισμικό ανοιχτού κώδικα (FOSS), υπό τους όρους της Γενικής Άδειας Δημόσιας Χρήσης GNU (GPL).

15Java SE 6

Στις 11 Δεκεμβρίου 2006, η Sun Microsystems κυκλοφόρησε το Java SE 6.

16Ολοκλήρωση JVM

Στις 8 Μαΐου 2007, η Sun ολοκλήρωσε τη διαδικασία της εικονικής μηχανής Java, καθιστώντας όλο τον βασικό κώδικά της διαθέσιμο υπό όρους διανομής ελεύθερου λογισμικού/ανοιχτού κώδικα, εκτός από ένα μικρό μέρος του κώδικα για το οποίο η Sun δεν κατείχε τα πνευματικά δικαιώματα.

17Εναλλακτικές Υλοποιήσεις

Από τον Μάιο του 2007, σε συμμόρφωση με τις προδιαγραφές της Java Community Process, η Sun είχε επαναδειοδοτήσει τις περισσότερες από τις τεχνολογίες Java της υπό τη Γενική Άδεια Δημόσιας Χρήσης GNU. Εν τω μεταξύ, άλλοι έχουν αναπτύξει εναλλακτικές υλοποιήσεις αυτών των τεχνολογιών της Sun, όπως ο GNU Compiler for Java (μεταγλωττιστής bytecode), το GNU Classpath (τυπικές βιβλιοθήκες) και το IcedTea-Web (πρόσθετο προγράμματος περιήγησης για applets).

18Oracle

Στις 27 Ιανουαρίου 2010, η Oracle εξαγόρασε τη Sun Microsystems, καθιστώντας τον ιδιοκτήτη της επίσημης υλοποίησης της πλατφόρμας Java SE.

19Παραίτηση του James Gosling

Στις 2 Απριλίου 2010, ο James Gosling, ο δημιουργός της Java, παραιτήθηκε από την Oracle, σε ηλικία 55 ετών.

20Java SE 7

Στις 28 Ιουλίου 2011, η Oracle κυκλοφόρησε το Java SE 7.

21Νομική Διαμάχη

Η χρήση τεχνολογίας που σχετίζεται με την Java στο Android οδήγησε σε νομική διαμάχη μεταξύ της Oracle και της Google. Στις 7 Μαΐου 2012, ένα δικαστήριο του Σαν Φρανσίσκο διαπίστωσε ότι εάν τα API μπορούσαν να προστατεύονται από πνευματικά δικαιώματα, τότε η Google είχε παραβιάσει τα πνευματικά δικαιώματα της Oracle μέσω της χρήσης της Java σε συσκευές Android.

22Java SE 8

Στις 18 Μαρτίου 2014, η Oracle κυκλοφόρησε το Java SE 8.

23Εφετείο

Ο περιφερειακός δικαστής William Haskell Alsup έκρινε στις 31 Μαΐου 2012 ότι τα API δεν μπορούν να προστατεύονται από πνευματικά δικαιώματα, αλλά αυτό ανατράπηκε από το Εφετείο των Ηνωμένων Πολιτειών για το Ομοσπονδιακό Κύκλωμα τον Μάιο του 2014.

24Πρόσθετο (Plugin)

Τον Ιανουάριο του 2016, η Oracle ανακοίνωσε ότι τα περιβάλλοντα χρόνου εκτέλεσης Java, βασισμένα στο JDK 9, θα διακόψουν το πρόσθετο προγράμματος περιήγησης, καθώς, μέχρι τα τέλη του 2015, οι προμηθευτές προγραμμάτων περιήγησης εργάζονταν για τη μείωση της υποστήριξης πρόσθετων στα προϊόντα τους.

25Υπέρ της Google

Στις 26 Μαΐου 2016, το περιφερειακό δικαστήριο αποφάσισε υπέρ της Google, κρίνοντας ότι η παραβίαση πνευματικών δικαιωμάτων του Java API στο Android συνιστά θεμιτή χρήση.

26Java SE 9

Στις 21 Σεπτεμβρίου 2017, η Oracle κυκλοφόρησε το Java SE 9.

27Java Applets

Τα Java applets ήταν προγράμματα που ήταν ενσωματωμένα σε άλλες εφαρμογές, συνήθως σε μια ιστοσελίδα που εμφανιζόταν σε ένα πρόγραμμα περιήγησης ιστού. Το Java applet, API, είναι πλέον καταργημένο από την Java 8 το 2017.

28Ανατροπή

Τον Μάρτιο του 2018, η τελευταία δικαστική απόφαση, σχετικά με τη διαμάχη μεταξύ Google και Oracle, ανατράπηκε από το Εφετείο, το οποίο παρέπεμψε την υπόθεση καθορισμού των αποζημιώσεων στο ομοσπονδιακό δικαστήριο του Σαν Φρανσίσκο.

29Java SE 10

Στις 20 Μαρτίου 2018, η Oracle κυκλοφόρησε το Java SE 10.

30Java 11

Στις 25 Σεπτεμβρίου 2018, κυκλοφόρησε η Java 11, μια έκδοση μακροπρόθεσμης υποστήριξης (LTS) που υποστηρίζεται επί του παρόντος.

31Τελευταία δωρεάν δημόσια ενημέρωση

Τον Ιανουάριο του 2019, η Oracle κυκλοφόρησε για την παλαιότερη έκδοση Java 8 LTS την τελευταία δωρεάν δημόσια ενημέρωση για εμπορική χρήση, ενώ κατά τα άλλα θα συνεχίσει να υποστηρίζει την Java 8 με δημόσιες ενημερώσεις για προσωπική χρήση τουλάχιστον έως τον Δεκέμβριο του 2020.

32Το ένταλμα

Τον Ιανουάριο του 2019, η Google κατέθεσε αίτηση για ένταλμα certiorari στο Ανώτατο Δικαστήριο των Ηνωμένων Πολιτειών για να αμφισβητήσει τις δύο αποφάσεις που έλαβε το Εφετείο υπέρ της Oracle.

33Java SE 12

Στις 19 Μαρτίου 2019, η Sun Microsystems κυκλοφόρησε την Java SE 12.

34Java SE 13

Στις 17 Σεπτεμβρίου 2019, η Sun Microsystems κυκλοφόρησε την Java SE 13.

35Java 14

Στις 17 Μαρτίου 2020, κυκλοφόρησε η Java 14, η νεότερη έκδοση της Java.