Does OpenJDK contain a JRE

javaopenjdk

I recently uninstalled all Oracle Java products and installed OpenJDK from https://jdk.java.net/11/, on my Windows 10 system, because I'm planning to develop some Java applications. In order to install it I simply unzipped the jdk in another folder and set the JAVA_HOME environment variable accordingly. Then I've installed the Eclipse IDE and everything worked fine. However, I have another program (not developed by me) which stopped working complaining that it needs a Java Runtime Environment. I thought that the OpenJDK provides me all the tools to make Java applications run, but I'm surely missing something.

What have I tried: I read this thread from stackoverflow, but I don't want to build my own JRE, just have one on my computer capable of running the java applications I have already installed. (The fact that I can run the Java applications I'm creating and not external ones is a bit weird).

I've also tried to follow the guidance of this thread and that's the output of the two commands that the first answer advises to run:

C:\Users\MyUser>java --version
openjdk 11.0.2 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

C:\Users\MyUser>javac --version
javac 11.0.2

Thanks a lot in advance for your help.

Best Answer

I think you have a couple different issues at play here.

  1. The best place to get OpenJDK and its related JRE is from the adoptopenjdk web site. On that site you can get a 64-bit Java 11 JRE available for Windows.
  2. The third party app you are trying to run and is complaining about Java 1.8.0 not being installed is likely poorly written. It is impossible to say without knowing exactly which app you are talking about, but my guess is that it is checking the Windows registry to see specifically whether Java 1.8.0 is installed. For some reason not known to me Oracle encodes release info into its Windows installer product key. This means any program specifically looking for (for example) Java 8u31 will not recognize an installation of Java 8u232.
Related Question