See my Defensive Computing blog at Computerworld.com  

What Version of Java Are You Using?

On a computer with multiple web browsers, be sure to check the Java version in every browser. I say this because multiple copies of Java can sometimes be installed with different browsers using different copies. Also, Java can be enabled in one browser and disabled in another.
Note: The portion of Java that runs programs is referred to as either the Java Run-time Environment (JRE) or the Java Virtual Machine (JVM).

 Method 1:  Ask Java

This is my favorite - straight from the horse's mouth (so to speak). The Java Run-time Environment is aware of its version and the company that authored it. So I wrote a very simple applet (the source code is on the About page) that gets this information from the JRE and displays it in a pink rectangle.

The version and vendor from the JRE

If Java is working, you will see a pink rectangle above with one line of text that says something like:

Java Version 1.8.0_25 from Oracle Corporation     or
Java Version 1.7.0_67 from Oracle Corporation     or
Java Version 1.6.0_45 from Sun Microsystems Inc.  or
Java Version 1.6.0_33 from Apple Inc.               

Version number translation:   1.6.0_34   is, in English,   Java 6 Update 34
The initial "1" is ignored as is the third digit. Ask Oracle why.
RUNNING THIS APPLET: Java security has changed quite a lot over the years and running this applet has gotten much more complicated.

In part this is because the applet is unsigned. In the Bizarro world of Oracle, unsigned applets are treated as more dangerous than signed applets. This is backwards for two reasons. First, unsigned applets run in a restricted Java sandbox whereas signed applets are given unrestricted access to the system. Yes, the sandbox has been buggy and broken, but some security is better than none. Second, it shows a faith in the Certificate Authority system that is unwarranted.

February 2017: This applet will not run at all, immediately after installing Java 8 Update 121 on Windows 7. The first thing that needs to be done is to add this website as an allowed exception in the Java Control Panel, on the Security tab. Details are below. After doing so, IE11 will run the app, but only if ActiveX filtering is disabled. IE11 produces a single popup window that asks for permission to run the app. Chrome 56 won't do Java at all, it doesn't even bother with error messages. This started with Chrome 45. Likewise, Firefox 51 does not run Java. It incorrectly reports that Java is disabled. This Firefox behavior changed at the end of 2016. Version 47 of Firefox will run this applet. You first have to respond to three different popup windows asking for permission and warning of the end of the earth, but it will run. Oracle suggests that Java developers move from applets to Java Web Start.
OLDER SECURITY RESTRICTIONS ON JAVA IN BROWSER

October 2014: Java 7 Update 71 and Java 8 Update 25: The applet above can be run with Java set to the default "high" security level. There will be assorted "as you sure" type prompts both from Java and your web browser, but it will run. However, this site, javatester.org, needs to first be added to the "Exception Site List" using the Java Control Panel. When adding sites to the list, you have to prefix them with HTTP colon slash slash. Java will object to HTTP but it will accept it. There is no HTTPS version of this site. Also, if you add "javatester.org" to the list, you must then go to "javatester.org" as "www.javatester.org" will fail.
Because it is unsigned, this applet will not run with Java set to the "very high" security level.
January 2014: Java 7 Update 51 changed the default security rules for unsigned Java applets such as the one on this page. By default, Java no longer runs any unsigned applets. In the Java control panel, the default security level with Update 51 is "High" which Oracle describes as "Java applications identified by a certificate from a trusted authority will be allowed to run". What this does not say is that unsigned applets will not run, at least not by default. If you get an error on this page that says "Application blocked by security settings" this is probably why.
One way to run an unsigned applet is to lower the security level to "Medium". The other way is to add trusted websites to a new exception list that Oracle/Java maintains. This list is not to be confused with the list of trusted applets that Firefox or Chrome maintains. Yes, there are now three lists of applets that are naughty and nice.
Java 7 Update 10 introduced a new checkbox that disables the use of Java in all browsers. By and large, this is a good thing, but there seems to be a failure to communicate between Java and many web browsers. As a result, all the browsers I have tried so far incorrectly report that Java is not installed when, in fact, it may be installed but this new security feature has been enabled.
As of Java 7 Update 71 and Java 8 Update 25 this is still true on Windows machines. Interestingly, if Java is disabled system-wide for use in web browsers (its on the Security) tab, both Chrome and Firefox will not even show the Java plug-in as being installed. On the flip side, Firefox 33 on Windows 7 reports that "Browser has Java disabled" when Java is not installed.
  JAVA VERSION HISTORY       (Wikipedia has this too)
 JAVA 8 Release History
  Java 8 became the default on Windows on Oct 14, 2014. See the Java 8 FAQ
  Java 8 is not officially supported on Windows XP but should work.
  Oracle has a release history for Java 7 and 8 and Release notes for Java 8
  Wikipedia also has a release history for Java 8.
  • As of July 18, 2017 the latest version of Java 8 is Update 141
      It is the new security baseline.
      It is due to expire October 17, 2017.
  • As of April 18, 2017 the latest version of Java 8 is Update 131
      It is the new security baseline.
      It is due to expire July 18, 2017.
  • As of January 17, 2017 the latest version of Java 8 is Update 121
      It is the new security baseline.
      It is due to expire April 18, 2017.
  • As of October 18, 2016 the latest version of Java 8 is Update 111
      It is the new security baseline.
      It is due to expire January 17, 2017.
  • As of July 19, 2016 the latest version of Java 8 is Update 101
      It is the new security baseline.
      It is due to expire October 19, 2016.
  • As of April 19, 2016 the latest version of Java 8 is Update 91
      It is the new security baseline.
      It is due to expire July 19, 2016.
  • As of March 23, 2016 the latest version of Java 8 is Update 77
      It is the new security baseline.
      Like the previous version, it is due to expire April 19, 2016.
  • As of February 5, 2016 the latest version of Java 8 is Update 73
      The security baseline remains Update 71.
      It is due to expire April 19, 2016.
  • As of January 19, 2016 the latest version of Java 8 is Update 71
      It fixes a bunch of bugs and is the new security baseline.
      It is due to expire April 19, 2016.
  • As of November 16, 2015 the latest version of Java 8 is Update 66
      It fixes a bunch of bugs, yet the security baseline remains Update 65.
      It is due to expire January 19, 2016.
  • As of October 20, 2015 the latest version of Java 8 is Update 65
      It fixes a bunch of bugs and is the new security baseline.
      It is due to expire January 19, 2016.
  • As of August 18, 2015 the latest version of Java 8 is Update 60
      It is a "limited update" with no security fixes. The Security Baseline remains Update 51.
      Like Update 51, Update 60 is due to expire October 20, 2015.
  • As of July 14, 2015 the latest version of Java 8 is Update 51
       It fixes 25 security vulnerabilities and is due to expire October 20, 2015.
  • As of April 14, 2015 the latest version of Java 8 is Update 45
       This release contains 13 bug fixes and is due to expire July 14, 2015.
  • As of March 5, 2015 the latest version of Java 8 is Update 40
      This release contains bug fixes and enhancements but no security related fixes.
      It is due to expire April 14, 2015. See InfoWorld and The Register.
  • As of Jan 20, 2015 the latest version of Java 8 is Update 31
  • As of Oct 14, 2014 the latest version of Java 8 is Update 25
      This became the default version of Java for new installs.
  • As of Aug 19, 2014 the latest version of Java 8 is Update 20
  • As of July 15, 2014 the latest version of Java 8 is Update 11
  • As of April 15, 2014 the latest version of Java 8 is Update 5
  • Java 8 was first released March 18, 2014




Java on Mac Computers

Java on OS X is Bundling Crapware, Heres How to Make it Stop from How-To Geek March 17, 2015.

The rest of this topic is a bit dated, so it has been suppressed by default.
At times Java on OS X was complicated as Java 6 came from Apple and Java 7 came from Oracle.




For many years this page had eight other methods of determining the installed version of Java.
But the page got really big, so they are no longer shown by default. But, they are still available: