@shuvam.codes/javapoly
v0.1.3
Published
JavaPoly.js is a library that polyfills native JVM support in the browser. It allows you to import your existing Java code, and invoke the code directly from Javascript.
Downloads
4
Readme
JavaPoly
Building
There is a Grunt script for building JavaPoly. So for building you have to install grunt-cli
. Just type command:
$ npm install -g grunt-cli
After this install all needed packages and type:
$ npm install
For building JavaPoly browser version only run command:
$ grunt build:browser
This creates build/javapoly.js
file.
The javapoly.js will auto-load the js library needed(browserjs.js, doppio lib and so on) from external site(eg, www.javapoly.com)
You can create complete package (including JavaPoly-Node-Doppio, JavaPoly-Node-SystemJVM) by running command:
$ grunt build
For testing JavaPoly-Node-Doppio or JavaPoly-Node-SystemJVM you can run:
$ ./node_modules/mocha/bin/mocha test/TestJavaPolyNodeDoppio.js
or
$ ./node_modules/mocha/bin/mocha test/TestJavaPolyNodeSystem.js
Development JavaPoly
To develop JavaPoly you have to run command:
$ grunt watch
This command runs watching process that updates build-file when you change any js-file in src-folder.
Testing JavaPoly
Tests need to be run in atleast the following two browsers: Firefox and Chromium. (different browser capabilities affect the number and kind of tests that are run).
There is a folder test
which should contain a simple build of Doppio and JavaPoly.
Make a build of Doppio and copy / link it into the test/doppio
folder.
Note that watching-process updates JavaPoly build in test
folder.
You can also rebuild JavaPoly for testing without watching by command:
$ grunt build:test
note, the final javapoly.js file which build:test task generate is a little different from the file which build:browser task generate. the javapoly.js which build:test task generate will load the doppio and browserjs library in local folders. and the javapoly.js which build:browser(or build) task generate will load the doppio and browserjs library from external web site.
To test JavaPoly you should run HTTP server for folder test
and open index.html
in browser.
We use a custom http server for this. To run it:
$ cd test
$ node server.js
After this, open browser and navigate to http://localhost:8080/index.html. The page contains tests written in Mocha environment.
You can also test JavaPoly via Mocha in nodejs. Install it by typing:
$ npm install -g mocha
And type mocha
in projects directory.
Using JavaPoly Core(include JVM) in WebWorker
we could use webworkers if possible(the browser support) , to avoid blocking the main thread.
simply add a worker options in javapoly. The options value is the url of the javapoly_worker.js.(default value is null for not using webworkers)
eg.
new JavaPoly(worker : 'build/javapoly_worker.js');