开发者可以在一台PC上进行Java开发，并能在安装有Java的手机、路由器、大型计算机上运行其代码而无需经过调整。这将使开发者能更容易地在不同的平台或操作系统上部署软件，而不必开发不同的版本来面向不同平台。该想法可以追溯到20世纪70年代，UCSD Pascal系统在p-code上开发、运行。James Gosling提到UCSD Pascal（以及Smalltalk虚拟机）对Java虚拟机的设计有关键性的影响。美中不足的是，Java虚拟机在各种操作系统（Windows、Linux、Solaris、