Broken JDK 7 Installer
Ok, how broken is this? I recently rebuilt my development machine and ran into this goodie while reloading my software development tools. I needed the Java JDK so, like any normal person, I went to Oracle’s website and downloaded the shiny new JDK 7 and Java EE 6 bundle. After running the downloaded installer I am confronted by this gem:
Error: Could not find the required version of the Java(TM) 2 Runtime Environment in'(null)'.
Huh? So doing some googling I see one suggestion that the download might have been incomplete so I download it again. No good. I found a post on Stack Overflow from someone trying to uninstall Java EE 6. The “fix” for that problem is that the uninstaller is written in Java so it needs a Java VM to run. Seriously? Yeah, so I try it. I install the basic Java 6 Runtime and hey! All fixed! Um, Oracle… You know that the JDK comes with its own runtime right? Now I have 2 runtimes installed… Your bundle installer couldn’t install its required runtime before launching the JDK installer? Even if you couldn’t be bothered to do something like that, how about a more descriptive message instead of your buggy “couldn’t find it in ‘(null)'” crap? I mean, I’m expecting the runtime to be included in the bundle so this tells me nothing about needing it to be already installed. It just looks like I got a corrupted download or just crap software.
Ok, so it’s been a year since this original post and Oracle still hasn’t fixed anything. Not only that, I discovered a new issue, probably what one commenter below had run into but I didn’t see it at the time. I got a shiny new laptop the other day. 64-bit with Windows 7 Professional. So, setting up my tools I initially tried to install the JDK deliberately without first installing the runtime just to see if this issue has actually been fixed. It hasn’t. What I did discover is just as WTF worthy as the above problem. Since I got a hot new 64-bit computer, let’s install the 64-bit JDK. Ok cool. I run the installer and it didn’t work as I expected. So, I download the Java 7 runtime. Still doesn’t work. Ok, I used the Java 6 runtime before so I try that. Nope. WTF? Ok, I’m trying the 64-bit runtimes, surely they should work. I download the 32-bit Java 7 runtime. And it works! Seriously? WTF? So, you can’t install the 64-bit JDK with the 64-bit Java runtime? The 64-bit JDK installer only works with the 32-bit runtime. Not only is this not documented anywhere on Oracle’s website the error message presented is still the same worthless uninformative message.
- Java The Complete Reference, 8th Edition
- OCP Java SE 7 Programmer Study Guide (Certification Press)
- Java 7 Recipes: A Problem-Solution Approach
- Head First Java, 2nd Edition