Nejlepší odpověď
Další odpověď již pojednává o JDK vs JRE.
Hlavní rozdíl spočívá v tom, že OpenJDK je otevřený zdroj a je volně použitelný, zatímco Oracle JDK se staví nad rámec toho a má některé vlastní komponenty.
Bod, který bych chtěl přidat, je: více než jednou jsem začal s nějaký systém Linux se spuštěnou OpenJDK, dělá nějaké věci Java. Pak jsem dostal nějakou podivnou vnitřní chybu C ++ nebo nějakou nekompatibilitu SSL nebo cokoli jiného. A v každém případě, jakmile jsem přešel na Oracle JDK, problém byl pryč.
Opravdu bych rád pracoval pouze s OpenJDK a podporoval otevřený zdroj, ale smutnou pravdou je, že v praxi je proprietární software prostě funguje lépe.
Odpověď
Existuje Oracle JDK a Open JDK.
JDK se používá k vytváření a spouštění programů [lze spustit v Javě VM]
JRE je dílčí součástí JDK a dodává se samostatně. Používá se ke spouštění programů vytvořených pomocí kompilátoru JDK [nyní zatmění dní a další IDE, které mají vlastní kompilátory]
Oracle JDK je vytvořen na základně OpenJDK codebase s několika doplňky, jako jsou doplňky prohlížeče, knihovna médií (Oracle nemá licenci k jejich další distribuci jako open source) a Java FX (nyní je Java FX součástí OpenJDK).
Nejdůležitější je, že virtuální stroj Oracle JDK má ve srovnání s OpenJDK lepší vyladěný výkon.
Můžete si myslet, že OpenJDK je důkaz koncepce pro specifikace Java SE.