JavaScript jvm implementation JavaScript jvm implementation javascript javascript

JavaScript jvm implementation


You may have a look at the bck2brwsr (aka java.net HTML)

  • it is a VM that transforms java byte code into JavaScript (Bck2Brwsr Virtual Machine)
  • provides a Java based wrapper to HTML (HTML via Java APIs)

The scope of the project is not to execute any existing java library. (see http://wiki.apidesign.org/wiki/Bck2Brwsr)

There are two nice examples on the web:

  • a calculator, that gives good technical insight (http://xelfi.cz/bck2brwsr/)
  • a nice space invader demo as a proof of concept (JAYDAY 2013 java summit page)

To get started with a working example (needs Maven and JDK7):

Step 1: load archetype

mvn archetype:generate -DarchetypeGroupId=org.apidesign.bck2brwsr \ -DarchetypeArtifactId=bck2brwsr-archetype-html-sample -DarchetypeVersion=0.7.2 \ -DarchetypeRepository=https://maven.java.net/content/repositories/releases/

Step 2: build HTML page and dependencies and pack as ZIP file

mvn install# produces bck-1.0-SNAPSHOT-bck2brwsr.zip

Step 3: unpack ZIP

cd target; unzip bck-1.0-SNAPSHOT-bck2brwsr.zip  creating: public_html/  creating: public_html/lib/  extracting: public_html/lib/emul-0.7.2-rt.jar    extracting: public_html/lib/javaquery.api-0.7.2.jar    inflating: public_html/bck2brwsr.js    extracting: public_html/bck-1.0-SNAPSHOT.jar    inflating: public_html/index.html 

Step 4: open index.html with your browser


Not sure how mature jsJVM is but looks like something which you would be interested in. As the page says, it's JVM written in Javascript.