>>1
Why? Because the JVM was made to run Java bytecode. Java was made to compile to Java bytecode. So the JVM was meant to run Java.
Then MS came along and said, wow that is some faggy shit. Lets ruin it. Then Sun got all butt hurt and anti-trust shit happened.
So MS said fuck you fags. We'll make our own shit and it will be 10x better.
So they made .Net, and it is infinitely better in every way. It is not language dependent.
So Java has 1 language. .Net has 40+.
Some butt-hurt fags were like fuck that, we'll add more languages to Java. But the JVM is so shitty and lacking in dynamic dispatch, those aren't real languages compiled to Java byetcode. They are really wrappers. That is, there are no other first class languages for Java other than the Java language.
The guy who made Jython even said fuck this. He quit that fail shit and moved on the IronPython for .Net. That evolved in to the DLR for running dynamic languages on .Net and now he works for MS.
Sun has been trying hard to implement true first class dynamic languages on Java, and here were are years later with no progress. It took a few months to get it working on .Net and here we are a little over a year later and .Net DRL has at least 5 full langauges in Beta (with a dozen more in the works) and soon to go Gold.
So to answer your question, the reason people still use Java is because they are the retards of the programming world.