There are now quite a few Java options for Raspbian so I thought I'd summarise them to help the confused newcomers decide which VM is for them.
Oracle JDK7
Pros: fast, full-featured
Cons: non-FOSS, free to use for "desktop"/"server" use but requires separate licensing for embedded use.
Notes: included by default in recent versions of the Raspberry Pi Foundation Raspbian image.
Package name: oracle-java7-jdk (note: package is in Raspberry Pi Foundation repo, not the Raspbian repo)
Zero
Pros: full-featured, FOSS
Cons: slow
Notes: default VM in Raspbian OpenJDK packages.
Package name for OpenJDK7: openjdk-7-jre
Package name for OpenJDK6: openjdk-6-jre
JamVM
Pros: faster than Zero, free, seems mature, FOSS
Cons: slower in my test than Avian and Oracle. Lacks support for agents
Package name for OpenJDK7: icedtea-7-jre-jamvm
Package name for OpenJDK6: icedtea-7-jre-jamvm
Avian
Pros: faster than JamVM in my test, FOSS.
Cons: seems very new, not available for openjdk-6, didn't seem to be as fast as Oracle VM in my test.
Package name for OpenJDK7: jvm-7-avian-jre
JDK 8 (with JavaFX) for ARM Early Access
Pros: seems to be the fastest option, supplied class libraries include accelerated JavaFX implementation.
Cons: proprietary, doesn't appear to be re-distributable, still pre-release, supplied class libraries are JDK8-based and don't include AWT/Swing (though apparently the Oracle embedded VM can be used with the class libraries from Raspbian OpenJDK to get AWT/Swing support).
Forum thread: http://www.raspberrypi.org/phpBB3/viewt ... 81&t=26110
The default VM for OpenJDK7 on Raspbian can be changed by editing /etc/java-7-openjdk/jvm-armhf.cfg. Presumably a similar config file exists for OpenJDK6 but I haven't checked myself.
edit: incorporated some of hendrik's fixes
edit2: add package name for avian, pointed out as missing by xranby
edit3: add mention of oracle java 7 packages.