Sounds like a JVM will indeed break the terms, including the one about not allowing scripting languages or ways to dynamically run loaded code. JRuby and Jython would be big no-nos. As soon as you loaded either one (or any one of the other dozens of JVM language interpreters/compilers), the app could connect to the Net and download new code. Apple does not want to allow that.