How to set the environment variables for Java in Windows
Java SE Development Kit 8u112 on a 64-bit Windows 7 or Windows 8
Set the following user environment variables (== environment variables of type user variables)
-
JAVA_HOME :C:\Program Files\Java\jdk1.8.0_112 -
JDK_HOME :%JAVA_HOME% -
JRE_HOME :%JAVA_HOME%\jre -
CLASSPATH :.;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib -
PATH :your-unique-entries;%JAVA_HOME%\bin(make sure that the longishyour-unique-entriesdoes not contain any other references to another Java installation folder.
Note for Windows users on 64-bit systems:
Progra~1 = 'Program Files'
Progra~2 = 'Program Files(x86)'
Notice that these environment variables are derived from the “root” environment variable JAVA_HOME. This makes it easy to update your environment variables when updating the JDK. Just point JAVA_HOME to the fresh installation.
There is a blogpost explaining the rationale behind all these environment variables.
Optional recommendations
-
Add a user environment variable
JAVA_TOOL_OPTIONSwith value-Dfile.encoding="UTF-8". This ensures that Java (and tools such as Maven) will run with aCharset.defaultCharset()ofUTF-8(instead of the defaultWindows-1252). This has saved a lot of headaches when wirking with my own code and that of others, which unfortunately often assume the (sane) default encoding UTF-8. -
When JDK is installed, it adds to the system environment variable
Pathan entryC:\ProgramData\Oracle\Java\javapath;. I anecdotally noticed that the links in that directory didn’t get updated during an JDK installation update. So it’s best to removeC:\ProgramData\Oracle\Java\javapath;from thePathsystem environment variable in order to have a consistent environment.