set of several computer software products and specifications
Dukesource125.gif
Java is a set of computer software and specifications that provides a software platform for developing application software and deploying it in a cross-platform computing environment. Java is used in a wide … Wikipedia
Factsheet
Java (software platform)
Factsheet
Java (software platform)
🌐
Oracle
oracle.com › java › technologies › downloads
Download the Latest Java LTS Free
GraalVM for JDK 17 has moved and is now available through My Oracle Support (MOS). ... Java SE subscribers will receive JDK 17 updates until at least September 2029.
🌐
Oracle
jdk.java.net
JDK Builds from Oracle - Java.NET
Looking to learn more about Java? Visit dev.java for the latest Java developer news and resources. Looking for Oracle JDK builds and information about Oracle’s enterprise Java products and services?
Discussions

The best general-purpose JDK out there? And what's your go-to
Aside from licensing, are there actual meaningful differences between the implementations? More on reddit.com
🌐 r/java
90
55
August 2, 2025
Java / Java SE / JDK / JRE - which is which and what do I want?
Please ensure that: Your code is properly formatted as code block - see the sidebar (About on mobile) for instructions You include any and all error messages in full You ask clear questions You demonstrate effort in solving your question/problem - plain posting your assignments is forbidden (and such posts will be removed) as is asking for or giving solutions. Trying to solve problems on your own is a very important skill. Also, see Learn to help yourself in the sidebar If any of the above points is not met, your post can and will be removed without further warning. Code is to be formatted as code block (old reddit: empty line before the code, each code line indented by 4 spaces, new reddit: https://imgur.com/a/fgoFFis ) or linked via an external code hoster, like pastebin.com, github gist, github, bitbucket, gitlab, etc. Please, do not use triple backticks (```) as they will only render properly on new reddit, not on old reddit. Code blocks look like this: public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } You do not need to repost unless your post has been removed by a moderator. Just use the edit function of reddit to make sure your post complies with the above. If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures. To potential helpers Please, do not help if any of the above points are not met, rather report the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns. More on reddit.com
🌐 r/javahelp
6
2
July 4, 2021
Java JDK, SDK, SE? - Stack Overflow
If you could answer these questions or help me out a little with clarity, it will be greatly appreciated: Is Java 7 just Java SE 7? and Java 6 is Java SE 6? Is Java SE 7 also Java JDK 7? and also ... More on stackoverflow.com
🌐 stackoverflow.com
Where is the JDK application?

The JDK is the entirety of files you just downloaded. You'll find the executables like java or javac in the bin folder.

More on reddit.com
🌐 r/javahelp
11
1
December 30, 2023
🌐
Oracle
java.com › en
Java | Oracle
Free Java Development Kit (JDK) downloads and resources from Oracle, the stewards of Java · Developer Downloads · Developer Resources · Enterprise Resources ·
🌐
OpenJDK
openjdk.org
OpenJDK
JDK 8 Updates · JDK 9 · JDK (…, 26, 27, 28) JDK Updates · JMC · Jigsaw · Lanai · Leyden · Lilliput · Loom · Memory Model Update · Multi-Language VM · Nashorn · New I/O · OpenJFX · Panama · Port: AArch32 · Port: AArch64 · Port: BSD · Port: Haiku ·
🌐
GeeksforGeeks
geeksforgeeks.org › java › jdk-in-java
JDK in Java - GeeksforGeeks
May 16, 2026 - JDK (Java Development Kit) is a software package used to develop and run Java applications. It provides all the necessary tools required for writing, compiling, debugging, and executing Java programs.
🌐
Java Knowledge Base
javaknowledgebase.com › home › java tutorial › java development kit (jdk) and java runtime environment (jre)
Install Java JDK & JRE on Windows, macOS, and Linux
August 29, 2025 - To download and install the Java Development Kit ( JDK) and Java Runtime Environment (JRE), follow these step-by-step instructions for Windows, macOS, and Linux.The overall process is similar across all platforms, with minor differences in installation steps and setting up environment variables.
🌐
Wikipedia
en.wikipedia.org › wiki › Java_Development_Kit
Java Development Kit - Wikipedia
May 4, 2026 - This tool is an interpreter and can interpret the class files generated by the javac compiler. Now a single launcher is used for both development and deployment. The old deployment launcher, jre, no longer · comes with Sun JDK, and instead it has been replaced by this new java loader.
Find elsewhere
🌐
GeeksforGeeks
geeksforgeeks.org › java › download-and-install-jdk-on-windows-mac-and-linux
Download and Install JDK on Windows, Mac and Linux - GeeksforGeeks
April 4, 2026 - Provides tools to develop, compile, and run Java applications · Includes essential components like compiler and runtime environment · Supports cross-platform development with “write once, run anywhere” principle · The system will execute the code using a set of Libraries and Compilers. JDK, JRE and JVM should not be confused with one another.
🌐
Oracle
oracle.com › java › technologies
Java SE | Oracle Technology Network | Oracle
Java SE 8u491 is the latest release of Java SE 8 Platform. Oracle strongly recommends that all Java SE 8 users upgrade to this release. JDK for ARM releases are available on the same page as the downloads for other platforms
🌐
Reddit
reddit.com › r/javahelp › java / java se / jdk / jre - which is which and what do i want?
r/javahelp on Reddit: Java / Java SE / JDK / JRE - which is which and what do I want?
July 4, 2021 -

Okay, context. I'm trying out some programming languages to perhaps get into (after previously primarily doing stuff with C#). One of these is Java. I had a 2019 version of Eclipse installed from last time I wanted to learn Java. Updated it to 2021, and it tells me I need Java 11 or higher.

So I google "download Java". Oracle offers me to download Java 8 Update 291, released April 2021. I check my instaleld version. Sure enough, I have Java 8 Update 291. If I am up to date, why is Eclipse complaining, I wonder? So I google Java 11. Huh, what's that, there are versions of Java up to 16? One article mentions that Java 8 has been deprecated for years. Odd, I think, didn't Oracle tell me just now that Java 8 was released in 2021? Oh, I see, they are talking about something called "Java SE". So I google what that is. "java vs java se", I google, but all I get are articles about how Java SE is different from something called Java EE. Never heard of it, I don't want it. In the meantime, I have also googled for JDK, since I assume that I need the Java SDK to get the compilers. Maybe the JDK has a different version number than the JRE, I theoretise. But then what is this Java SE? At one point, it says it's the standard edition, but on the next page, it says it's "for reference purposes only". Whatever that means. Can I use it to run and compile Java or not, I ask.

tldr: why is there a Java 16 if Oracle tells me 8 is the latest, which one do I want to run and program with the latest Eclipse?

P.S. necessary context is perhaps that I'm on 64-bit Windows 7 (my Eclipse install on my Linux laptop works fine)

Top answer
1 of 5
6
The JRE is the Java Runtime Environment, you need it to run java applications. The JDK is the Java Development Kit, you need it to compile your code, it also includes the JRE. About Java SE and EE, to my understanding, I may be wrong here, SE is Standard Edition, what you use for personal use. Java EE is the enterprise Edition, is used by business and you have to pay for it. About the versions. There is java up to 16, at the moment the most used Java versions are Java 8, Java 11 and Java 16 (the latest). Java 8 is used because Java 9 broke lots of Java 8 applications, only use it to run Java 8 applications not develop. Java 11 is the most used to make applications, if you don't use the latest version to make your applications probably you want to use this one. Java 16 is just the latest. These 3 java versions are the ones that are still receiving new builds ('updates'). When you search to download Java oracle will most likely give you the latest build of Java 8. I recommend you installing the JDK of Java 11 and 16 and if you want the JRE of Java 8. To download the JDK just search for "Java 11 jdk" and this page will show up.
2 of 5
1
Please ensure that: Your code is properly formatted as code block - see the sidebar (About on mobile) for instructions You include any and all error messages in full You ask clear questions You demonstrate effort in solving your question/problem - plain posting your assignments is forbidden (and such posts will be removed) as is asking for or giving solutions. Trying to solve problems on your own is a very important skill. Also, see Learn to help yourself in the sidebar If any of the above points is not met, your post can and will be removed without further warning. Code is to be formatted as code block (old reddit: empty line before the code, each code line indented by 4 spaces, new reddit: https://imgur.com/a/fgoFFis ) or linked via an external code hoster, like pastebin.com, github gist, github, bitbucket, gitlab, etc. Please, do not use triple backticks (```) as they will only render properly on new reddit, not on old reddit. Code blocks look like this: public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } You do not need to repost unless your post has been removed by a moderator. Just use the edit function of reddit to make sure your post complies with the above. If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures. To potential helpers Please, do not help if any of the above points are not met, rather report the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
🌐
Ops
ops.java › releases
JDK Releases - Ops.java
April 21, 2026 - With the release of JDK 6 we went back to using JDK without the “2”. The Java version-string format has changed several times throughout the years.
🌐
OpenJDK
openjdk.org › projects › jdk
JDK Project
1 month ago - The goal of this long-running Project is to produce a series of open-source reference implementations of the Java SE Platform, as specified by JSRs in the Java Community Process.
Top answer
1 of 5
106

Yes, it can be confusing.

You didn't ask for it, but I'll start from here. The JVM is the Java Virtual Machine. It is a program that can read compiled Java code (the .class files, and the .jar files that are simply .zip files containing a bunch of .class files packaged together) and execute it. There are many JVMs, for example you need a JVM for Windows, one for Linux, one for OSX etc. but there are also many alternative JVMs, JVMs for embedded device etc. (many will disagree and say that the JVM is only one, and it's a specification. However, commonly a sysadmin will say "the JVM" to indicate the actual binary running on the server).

You didn't ask for the following either. The JRE is the Java Runtime Environment. It includes everything needed to run a Java application, that is the JVM itself, the standard library and a bunch of other files. The standard library is itself very important, because it contains a lot of useful things you'll use when developing Java applications. It contains all the stuff in java.* packages and some private stuff in com.sun, com.oracle packages.

Different versions of Java (1.0, 1.1, etc. all the way to 1.7, also known as Java 7) usually contain improvements to both the JVM and the standard library, so the two usually need to run together, and are packaged together in the JRE.

If you are running any Java program on your computer, you have a JRE installed.

The JDK is the Java Development Kit. It contains the JRE as well as a lot of other useful stuff for developing Java applications. That includes the compiler obviously (which is also contained in the JRE for some good reason, but you can ignore this fact now), the JAR utility to create .jar files, many tools for "decompiling" class files, inspect .jar files, repackage them, etc.

It also usually contains documentation for the standard library and also all the sources of the standard library, because they are useful for developers to read and inspect. If you want to seriously develop Java applications, you need the JDK.

When talking about JavaSE, JavaEE, JavaME etc. those are so called "editions". Basically, since the Java ecosystem is huge, Sun decided to offer Java in different editions:

  • JavaSE: is the standard edition, it is usually a good fit for client side software, normal applications, etc.
  • JavaME: is the mobile edition, it is what small games on old phones was made with, but it's basically a "smaller" version of Java suitable for very low capacity processors.
  • JavaEE: is the "enterprise edition". It is used to develop server side stuff, so it includes a lot of libraries used on server side.

Regarding numbering, they messed it up quite a bit. Actually, after Java 1.4 they created the JCP, to involve the community in the development of Java itself, and starting from Java 1.5 it is officially named "Java 5", despite most in the industry calling it 1.5. Also, Java 1.2 was Java 2, but everyone I know who was not working in Sun at that time always called it 1.2.

2 of 5
21

Is Java 7 just Java SE 7? and Java 6 is Java SE 6?

Yes.

There are a couple of Java "editions", namely Java SE, the "Standard Edition", Java EE, the "Enterprise Edition" and Java ME, the "micro edition".

"Java N" where N is some number refers to the SE. There are separate edition numbers for Java EE which is up to version 6 now. Java ME has its own versions as well - it is currently at version 3. Java ME is intended for mobile and small devices.

Java EE is a set of libraries and interfaces, such as EJB, JMS, JNDI, Servlets/JSPs that are built on top of the Java SE.

Is Java SE 7 also Java JDK 7? and also what is the JDK?

JDK = Java Development Kit. When you download Java you can either get the JRE (Java Runtime Environment) which only lets you run already compiled Java applications or you can get the JDK which allows you to compile and run Java apps. Java SE 7 refers to both the JDK and the JRE.

Does this mean that the java JDK is the same as the java number (Java SE 7)?

Yes.

what is java 1.5 and 1.6? and how does that correspond to the java number (Java SE...)?

Sun's numbering for Java changed midstream and is a bit confusing. They went from 1.0 to 1.1 then 1.2. Then they decided to call 1.2 "Java 2" and that label lasted until Java 1.4. Then Java 5 was called both 1.5 and 5.0 and that has continued - Java 7 is also Java 1.7, Java 6 is also Java 1.6, etc.

Is Java's SDK the same as the JDK?

Yes.

🌐
Oracle
oracle.com › java › technologies › javase › jdk25-archive-downloads.html
Java Archive Downloads - Java SE 25
Go to the Oracle Java Archive page. The JDK is a development environment for building applications using the Java programming language.
🌐
Oracle
jdk.java.net › 17
JDK 17 Releases - Java.NET
JDK 17 has been superseded. Please visit jdk.java.net for the current version.
🌐
Bell Software
bell-sw.com › pages › downloads
Download JDK 8, 11, 17, 21, 25, 26 | Java Builds for Linux, Windows and macOS
Download Liberica JDK, supported OpenJDK builds. Open source Java 8, 11 and more for Linux, Windows, macOS.
🌐
Oracle
oracle.com › java › technologies › javase › javase8-archive-downloads.html
Java SE 8 Archive Downloads (JDK 8u202 and earlier)
This page includes archive downloads for Java SE 8u202 and earlier. The archive downloads for Java SE 8u211 and later updates are available, under the Java SE OTN License. The JDK is a development environment for building applications using the Java programming language.
🌐
Microsoft Learn
learn.microsoft.com › en-us › java › openjdk › download
Download the Microsoft Build of OpenJDK | Microsoft Learn
April 30, 2026 - Invoke-WebRequest -Uri https://aka.ms/download-jdk/microsoft-jdk-25-windows-x64.zip · For a complete list of available URLs and versions, see this page. This page only lists the latest updates available. To download older releases, visit this document. Send us your comments, thoughts, and ideas to help us improve the Microsoft Build of OpenJDK. Visit our OpenJDK discussions page on GitHub to send us your feedback. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
🌐
The Knowledge Academy
theknowledgeacademy.com › blog › java-development-kit-jdk
What is Java Development Kit (JDK)? Explained in Detail
April 10, 2026 - Java Development Kit (JDK) is a programming platform which allows you to create and develop robust projects in Java Programming Language. It is commonly confused with Java Runtime Environment (JRE) by novice programmers.