Rhino is an implementation of JavaScript in Java.
Rhino is licensed under the MPL 2.0.
Release Notes for recent releases.
Compatability table which shows which advanced JavaScript features from ES5, 6, and 7 are implemented in Rhino.
Information for script builders and embedders:
https://developer.mozilla.org/en-US/docs/Rhino_documentation
JavaDoc for all the APIs:
http://mozilla.github.io/rhino/javadoc/index.html
More resources if you get stuck:
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Community
Rhino builds with Gradle. Here are some useful tasks:
./gradlew jar
Build and create Rhino jar in the buildGradle/libs directory.
./gradlew test
Build and run all the tests.
./gradlew testBenchmark
Build and run benchmark tests.
- Ensure all tests are passing
- Remove
-SNAPSHOTfrom version ingradle.propertiesin project root folder - Create file
gradle.propertiesin$HOME/.gradlefolder with following properties. Populate them with maven repo credentials and repo location.
mavenUser=
mavenPassword=
mavenSnapshotRepo=
mavenReleaseRepo=
- Run
Gradletask to publish artifacts to Maven Central.
./gradlew publish
- Increase version and add
-SNAPSHOTto it ingradle.propertiesin project root folder. - Push
gradle.propertiestoGitHub
Rhino can run as a stand-alone interpreter from the command line:
java -jar buildGradle/libs/rhino-1.7.8.jar
Rhino 1.7.8 2017 08 24
js> print('Hello, World!');
Hello, World!
js>
You can also embed it, as most people do. See below for more docs.
Most issues are managed on GitHub:
https://github.com/mozilla/rhino/issues
The Google group is the best place to go with questions:

