Oracle Java on Windows

This website offers several Java programs for download. These require a current Java Runtime Environment (JRE) which is either distributed by itself or as part of a Java Development Kit (JDK).

Linux systems often come with OpenJDK preinstalled; otherwise, you can get a prebuilt package. Mac OS-X used to preinstall Java 6 but Oracle now distributes the current version from java.com.

Theoretically, Windows users should also get the current JRE from java.com. But in practice, Oracle’s default Windows download is an obsolete crapware-infested malware magnet. Here I’ll explain why you should avoid it, and what Windows users should do instead.

Default Oracle JRE

Oracle always offers the 32-bit JRE to Windows users, even for 64-bit systems, unless you arrive at java.com with a 64-bit browser. What’s wrong with that? All of the following:

  • Oracle checks the browser because the JRE installs a browser plugin which is a significant security risk and should be turned off immediately. You don’t want it enabled in your default browser!
  • Oracle’s 32-bit JRE for Windows, and only that edition, tries to foist crapware onto your system, namely Ask Toolbar and McAfee Security Scanner. Java architect Joshua Bloch himself has signed a petition to get Oracle to stop this practice, so far without success.
  • Oracle’s 32-bit JRE for Windows, and only that edition, lacks the fast modern Server Virtual Machine (VM) that’s the default on all other systems. Instead, it ships only with the slow obsolete Client VM. Don’t be fooled by the misleading names – the current “Server” VM is in no way exclusive to servers. Non-Windows systems use it to execute all Java programs, and so should you.

First Uninstall Everything

Make sure to uninstall any old or otherwise unwanted versions of Java on your system. Manually installed newer versions do not replace older ones, and 64-bit editions do not replace 32-bit ones. They all install side-by-side, so you might retain unwanted browser plugins or accidentally run the wrong VM.

Even uninstalling an Oracle JRE/JDK may not delete its humongous installation cache, so you must do that manually as well. You can find obsolete installation caches in directory C:\­Users\­<User>\­AppData\­LocalLow\­Sun\­Java, where <User> is your Windows user name.

Oracle Offline Installers

The simplest option is to get one of the “Windows Offline” installers from JRE 8 Downloads. These don’t install crapware, although they do come with the unwanted browser plugin.

  • Oracle 64-bit JRE — Most people are running a 64-bit version of Windows today. If you do, simply get the 64-bit offline installer. The browser plugin is present but harmless since hardly anyone uses 64-bit browsers, and you’ll have the proper Server VM to boot.
  • Oracle 32-bit JRE — If you must use the 32-bit JRE, the 32-bit offline installer at least avoids crapware. You still need to disable the browser plugin, though, and you won’t get the Server VM.

Oracle has some additional information on the 64-bit edition. Most importantly, there’s no automatic update checking so you’ll have to obtain newer versions yourself as necessary. That’s annoying but not a big deal since you’re not running a Java plugin in your default 32-bit web browser, so you won’t be affected by new security exploits anyway.

Advanced JRE Options

Oracle’s Technology Network provides a few more download options for advanced users. These are all linked from the central Java SE Downloads page.

Oracle 32-bit JDK with JRE

The 32-bit Server VM is only distributed with the 32-bit Java SE Development Kit 8 (x86/i586). The JDK includes a public JRE, but some extra steps are needed to enable the Server VM there:

  1. Find the private JRE of your JDK installation, e.g. "C:\­Program Files\­Java\­jdk1.8.0\­jre\­bin\".
  2. Copy the entire server folder from that directory into the public JRE, "C:\­Program Files\­Java\­jre8\­bin\". You should already see a client folder in that directory.
  3. When running a Java program, specify the -server switch after the java or javaw command.

Remember that although the JDK does not install crapware it still comes with the unwanted browser plugin, so you’ll have to disable that.

Oracle JRE without Installer

The JRE 8 Downloads page also provides both Windows JREs as .tar.gz archives without installer. This avoids both crapware and browser plugin, but also removes any OS integration whatsoever. Specifically, executing Java applications requires manually invoking java[w].exe from wherever the archive was unpacked. Moreover, the 32-bit JRE still does not include the Server VM.

These archives are not suitable for average users (who wouldn’t know how to unpack them for starters), but the 64-bit version may appeal those who are comfortable with manual file management and who really don’t want Oracle messing with their operating system.