There are lots of desktop apps that come with their own Java VM. It
seems quite common for big apps. For example, Eclipse is usually
distributed with a Java VM. Since Eclipse is the standard for embedded
development IDE's and tools from microcontroller manufacturers, I have
dozens of Eclipse installations for Linux and Windows, each with their
own Java VM.
While there seems to be a common core to Java VM's that is fine for many
programs, others are fussier about versions or different VM
implementations - and thus distributed them with the programs.