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


Most current one seems to be Doppio