Bck2BrwsrJavadoc
From APIDesign
Line 3: | Line 3: | ||
<h3>Build Your Own Virtual Machine!</h3> | <h3>Build Your Own Virtual Machine!</h3> | ||
- | Classes to perform [http://hudson.apidesign.org/hudson/job/bck2brwsr.javadoc/lastSuccessfulBuild/artifact/rt/vm/target/site/apidocs/index.html ahead-of-time compilation/transpiling] of any JVM bytecode classes to JavaScript. | + | Classes that allows you to perform [http://hudson.apidesign.org/hudson/job/bck2brwsr.javadoc/lastSuccessfulBuild/artifact/rt/vm/target/site/apidocs/index.html ahead-of-time compilation/transpiling] of any JVM bytecode classes to JavaScript in your own applications. |
<h3>JDK Core Libraries Emulation</h3> | <h3>JDK Core Libraries Emulation</h3> |
Revision as of 06:09, 25 May 2020
The goal of Bck2Brwsr project is to create small Java virtual machine capable to boot fast in modern browsers (even without any Java plugin installed).
Contents |
Build Your Own Virtual Machine!
Classes that allows you to perform ahead-of-time compilation/transpiling of any JVM bytecode classes to JavaScript in your own applications.
JDK Core Libraries Emulation
The Bck2Brwsr VM emulates subset of JDK7 class libraries called bck2brwsr compact profile. The Bck2Brwsr VM can however run on even smaller subset of classes called bck2brwsr mini profile.
To implement native methods these libraries may use JavaScriptBody & co. annotations that allow direct communication with the JavaScript environment from Java. Btw. these annotations are Bck2Brwsr specific - there are however general annotations (work on HotSpot, Bck2Brwsr, TeaVM and other VMs) which one can use to write own libraries that talk to JavaScript - see HTML for Java APIs.
Support for reading ZIP files has been moved into separate library.
Launching & Testing
The testing framework of bck2brwsr is build on top of TestNG and enhances it with special support API.
To launch a Bck2brwsr application one can use generic Launcher API.