When i am installing JDK(TM) Update 10, it installs the following four features :
-> Development Tools
-> Demos and Samples
-> Source Code
-> Java DB
With last three features, i have no probz at all.
Now Development tools contains :-
- java devlopment kit (to develop java applications, here jdk1.6.0_10)
- public jre (which is always required if u want to run java applications regardless of jdk, here jre6)
jdk (jdk1.6.0_10) contains : jre, bin, etc..etc...
jre directory also have a bin directory.
On my windows machine i have set the path value :-
path=C:\Program Files\Java\jdk1.6.0_10\bin;.;
It means I am using javac.exe of jdk1.6.0_10\bin for compiling .java files and
java.exe also from jdk1.6.0_10\bin and not of jdk1.6.0_10\jre\bin for interpretting .class files.
javaw.exe also from jdk1.6.0_10\bin and not of jdk1.6.0_10\jre\bin for interpretting .class files.
In addition jdk1.6.0_10\bin also have appletviewer.exe, jar.exe, jarsigner.exe, java-rmi.exe, javadoc.exe, javap.exe, rmic.exe, rmiregistry.exe which i frequently use, some more exe's.
*Also both jdk1.6.0_10\bin, jdk1.6.0_10\jre\bin have some common as well as different exe's.*
If a developer want to develop and test java applications, jdk1.6.0_10\bin is more then sufficient (as it contains all the above exe's mentioned in BOLD), and if a user wants to use java applications, then a public jre is more then sufficient (which ships with JDK, if u are not a developer or not have JDK installed, u can also download it seperately).
Now the point which i am not getting is that,
-> when all the exe's for runtime (java.exe, javaw.exe) or required for binding (rmiregistry.exe) (mentioned above in BOLD + ITALIC) are present in jdk1.6.0_10\bin,
The point which is confusing me is,
Why jdk provides a jre inside jdk1.6.0_10 directory???