Take the 2-minute tour ×

Is there some statistic on how widely people use various JRE's? I'm asking, because I created a program (using JDK 1.6), and found that it would not work on JRE 1.5 and older. So, do I need to bother making it compatible, or maybe the percent of JRE 1.5 out there is too small?

share|improve this question
How will a straw-poll of SO users help you decide this? –  skaffman Nov 17 '10 at 15:25
You can do a simple web search of 'java version statistics' to get answers to this question. –  Paul Ruane Nov 17 '10 at 15:27
Also ask yourself, "Who are my customers? Which JDK will they typically be running?" –  K.U. Nov 17 '10 at 16:15
add comment

6 Answers

up vote 4 down vote accepted

Here is some stats:

Don't really know how it's calculated... I think come from users browser, but don't know which websites.

share|improve this answer
It’s number of browsers, that have Java enabled divided by number of all browsers. So it has nothing to do with what Java version is used. –  Gumbo Nov 17 '10 at 15:30
Down the page, there is a pie charts of java versions. –  Rogach Nov 17 '10 at 15:47
add comment

You need to have your JDK emit bytecode for older JVMs with the -target SDK_VERSION argument to javac. Bytecode from one version of the JVM is not compatible with an older release of the JVM.

Thanks to comment

The above only works if you are not using functionality that older JVMs don't have, for example, if you took advantage of the Java Desktop API, which was introduced in 1.6, you wouldn't be able to target an older JVM anyway.

I won't throw statistics your way, I don't really know what your application is/does/who it's intended for, but there are companies and people who still use older JDKs - perhaps due to heavy investment in some specific release of the JVM and it would require significant time and testing to ensure that moving to a newer version does not break their existing software/code, or perhaps some software strictly mandates it. I worked with software from a company (which shall remain unnamed) that ONLY wanted a specific patch revision of an older JVM - their software refused to work on anything newer.

share|improve this answer
Presumably, he uses functions/classes that don't exist in 1.5, so -target (which I presume is what you meant) won't work. –  Powerlord Nov 17 '10 at 15:28
@R. Bemrose - thanks for the comment, I updated to reflect the concerns your brought up. –  birryree Nov 17 '10 at 15:32
add comment

Um yes plenty of enterprises use earlier versions of Java. You simply need to decide what your lowest level target JVM is. Don't forget you can use the -source & -target parameters to specify the type of source code and byte code compatibility with earlier versions.

share|improve this answer
yep, in late 2008 at least some banks were still very much with 1.4. –  Petteri Hietavirta Nov 17 '10 at 15:39
Heck in late 2010 several do, I know I have to deal with at least one of them :( –  Martijn Verburg Nov 17 '10 at 15:59
add comment

I don't know of any statistics, but for what is worth I am certain people use Java 1.5. If your app is geared toward general public, I don't think you need to bother, but in specialized environments it might be.

share|improve this answer
add comment

If your application will be for consumers, you will probably be fine relying on 1.6.

Most places that are still running 1.5 are for business applications that have not been updated.

share|improve this answer
add comment

If you're not using any Java 1.6 specific features, you can pass a command line argument to javac to target the 1.5 framework. The argument to add is -target 1.5. Obviously this wouldn't work if you're using any new features shipped with 1.6.

share|improve this answer
add comment

Your Answer


