Write once, run anywhere (WORA), or sometimes Write once, run everywhere (WORE), was a 1995[1] slogan created by Sun Microsystems to illustrate the cross-platform benefits of the Java language.[2][3] Ideally, this meant that a Java program could be developed on any device, compiled into standard bytecode, and be expected to run on any device equipped with a Java virtual machine (JVM). The installation of a JVM or Java interpreter on chips, devices, or software packages became an industry standard practice.
The catch is that since there are multiple JVM implementations, on top of a wide variety of different operating systems, there could be subtle differences in how a program executes on each JVM/OS combination, possibly requiring an application to be tested on each target platform. This gave rise to a joke among Java developers: Write Once, Debug Everywhere.[4]
In comparison, the Squeak Smalltalk programming language and environment boasts of being truly write once run anywhere,[5] because it runs bit-identical images across its wide portability base.[6]
Java's write-once-run-everywhere capability along with its easy accessibility have propelled the software and Internet communities to embrace it as the de facto standard for writing applications for complex networks
So far, the "Write-once, run-everywhere" promise of Java hasn't come true. The bulk of a Java application will migrate between most Java implementations, but taking advantage of a VM-specific feature causes porting problems.