Java Bindings for V8
Clone or download
irbull Support empty ArrayBuffers
If an ArrayBuffer was empty, we were returning null. We now return
an empty ArrayBuffer.

Change-Id: Ie9014e81d4f46261024c906548d6da058a04babe
Latest commit 319816a Oct 11, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.settings Use Java 1.6 as the target for J2V8 May 15, 2015
META-INF Add an OSGi manifest for J2V8 Jan 16, 2015
build_system Set the permissions on the start script for the emulator Oct 5, 2018
cmake build-system unit-testing & other extras Aug 29, 2017
dep_includes_macosx Use Node.js to build J2V8 on MacOS. May 4, 2016
docker Update the build to use the Android sdkmanager Jul 19, 2018
gradle/wrapper Patch J2V8 for Node 7.4.0 Apr 4, 2017
jni Support empty ArrayBuffers Oct 12, 2018
node.patches build-system unit-testing & other extras Aug 29, 2017
releng Clean up the automatic deploy script May 29, 2017
src Support empty ArrayBuffers Oct 12, 2018
vagrant additional build-system features & some j2v8 fixes Aug 29, 2017
.classpath Update the .classpath file to Java 6 Oct 9, 2018
.gitignore show progress percentage on `nodejs.py pkg` Aug 29, 2017
.project Update project settings for Maven Aug 28, 2014
.travis.yml Use the new build scripts for our travis build Aug 29, 2017
BUILDING.md atexit fix & prettier `build -i` listing Aug 29, 2017
CMakeLists.txt build-system unit-testing & other extras Aug 29, 2017
CONTRIBUTING.md Add a contributing file to J2V8 Dec 8, 2015
Jenkinsfile Collect results after the build finishes in the pipeline May 9, 2017
README.md Added a link to a blog article regarding React.js Aug 29, 2017
build-node.sh Update the local build scripts I use while developing May 9, 2017
build.gradle Upgrade the Android build tools Jul 18, 2018
build.properties Add an OSGi manifest for J2V8 Jan 16, 2015
build.py extended documentation & code polishing Aug 29, 2017
buildAll.sh Get existing build scripts working with updated build Jun 22, 2017
deploy_snapshots.sh Check status after each maven call in the deploy script Jul 19, 2016
epl-v10.html Add an EPL License to J2V8 Nov 13, 2014
gradle.properties build-system unit-testing & other extras Aug 29, 2017
gradlew Create an aar build for J2V8 Nov 4, 2015
gradlew.bat Create an aar build for J2V8 Nov 4, 2015
j2v8-cli.cmd more CLI documentation & build-step args Aug 29, 2017
j2v8-cli.sh more CLI documentation & build-step args Aug 29, 2017
nodejs.py build-system unit-testing & other extras Aug 29, 2017
pom.xml Fixed warnings reported by Eclipse Oct 5, 2018
project.properties Create an aar build for J2V8 Nov 4, 2015
tycho_pom.xml Update to 2.0 SNAPSHOT Feb 17, 2015

README.md

J2V8

Build Status Maven Central

J2V8 is a set of Java bindings for V8. J2V8 focuses on performance and tight integration with V8. It also takes a 'primitive first' approach, meaning that if a value can be accessed as a primitive, then it should be. This forces a more static type system between the JS and Java code, but it also improves the performance since intermediate Objects are not created.

We developed J2V8 as a high performance engine for our multi-platform mobile toolkit tabris.js and it is a great choice for executing JavaScript on Android devices.

Building J2V8

Building J2V8 requires building both the native parts and the Java library (.jar/.aar file). To build the native parts we first build Node.js as a library and then statically link J2V8 to that. The Java parts are built with maven/gradle.

J2V8 uses a cross-platform, cross-compiling build-system written in Python.

For any further build instructions & details please read BUILDING.md

Tutorials

Articles

Presentations

Other Resources

Here is a list of articles I've written on J2V8 http://eclipsesource.com/blogs/tag/j2v8/.

Who is using J2V8?

Here are some projects that use J2V8:

License

The code is published under the terms of the Eclipse Public License, version 1.0.