Please understand that I say this with the utmost sincerity: Almost all Java programs suck. Programs written on a specific operating system tend to not work on other operating systems. Most programmers take a lot of shortcuts and the result is a bloated program that eats 75% of your processor and could easily be replaced with a flash or shockwave animation.
Java/JVM itself is very powerful, but the people that program for it are nincompoops.
Example: I work on UNIX systems whose storage resides on a HDS 9980v (very large disk array) which is primarily managed via a web-based Java application. To use this application you MUST be on a windows box. You CANNOT use any other operating system. Hell, I have problems using it with Firefox so I have to use Internet Explorer. Why? Because the persons who developed it use certain functionalities that are only available with the windows JVM.
It's asinine, I know. But, with all the junky Java programs out there why would I want to run any on my DS? Well, then again, I guess I could use that most awesomest
Java Quake 2 Engine and frag away on my DS!
When I say "very large disk array", I meant it. This thing can hold up to 1024 146GB disk drives. That's 147.5 Tera bytes, and its system manager only works in Windows? Jimminy Cricket!