

There are some other utilities here as well, such as keytool and policytool. The most important is java (and for Windows, javaw as well), which launches the JVM. bin/ contains Java's executable programs.It's basically a bunch of directories with Java-related files, to wit: The JRE is, as the name implies, an environment. The answer above (by Pablo) is very right. Why would you need the JDK then? Because the application server will convert JSP into Java servlets and needs to use the JDK to compile the servlets. For example, if you are deploying a web application with JSP, you are technically just running Java programs inside the application server. Sometimes, even if you are not planning to do any Java development on a computer, you still need the JDK installed. On the other hand, if you are planning to do some Java programming, you need to install the JDK instead. Usually, if you only care about running Java programs on computer you will only install the JRE.

It is capable of creating and compiling programs. It has everything the JRE has, but also the compiler ( javac) and tools (like javadoc and jdb). The JDK is the Java Development Kit, the full-featured SDK for Java.

However, it cannot be used to create new programs. It is a package of everything necessary to run a compiled Java program, including the Java Virtual Machine (JVM), the Java Class Library, the java command, and other infrastructure.
