Scripting for the Java Platform is a framework for embedding
scripts into
Java
Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
source code
In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer.
Since a computer, at base, only ...
.
There is no requirement for a given
Java virtual machine
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descr ...
(JVM) to include any engines by default, but the Oracle JVM (Java 6 and later) includes a
JavaScript engine
The first engines for JavaScript were mere interpreters of the source code, but all relevant modern engines use just-in-time compilation for improved performance. JavaScript engines are typically developed by web browser vendors, and every maj ...
, based on
Rhino
A rhinoceros ( ; ; ; : rhinoceros or rhinoceroses), commonly abbreviated to rhino, is a member of any of the five extant taxon, extant species (or numerous extinct species) of odd-toed ungulates (perissodactyls) in the family (biology), famil ...
version 1.6R2 before Java 8, and
Nashorn since Java 8.
Scripting for the
Java Platform
Java is a set of computer software and specifications that provides a software platform for developing application software and deploying it in a cross-platform computing environment. Java is used in a wide variety of computing platforms fr ...
was developed under the
Java Community Process
The Java Community Process (JCP), established in 1998, is a formal mechanism that enables interested parties to develop standard technical specifications for Java technology. Becoming a member of the JCP requires solid knowledge of the Java program ...
as JSR 223. The final release of JSR 223 happened on December 11, 2006. The specification, however, was withdrawn later on December 13, 2016 after a Maintenance Review Ballot,
JSR 223 Detail
/ref> where it was decided that this functionality would be included as an integral part of Java 9
The Java language has undergone several changes since JDK 1.0 as well as numerous additions of classes and packages to the standard library. Since J2SE 1.4, the evolution of the Java language has been governed by the Java Community P ...
and onward.
See also
* Da Vinci Machine
The Da Vinci Machine, also called the Multi Language Virtual Machine, was a Sun Microsystems project aiming to prototype the extension of the Java virtual machine, Java Virtual Machine (JVM) to add support for Dynamic programming language, dynam ...
* Groovy
''Groovy'' (or, less commonly, ''groovie'' or ''groovey'') is a slang colloquialism popular during the 1960s and 1970s. It is roughly synonymous with words such as "excellent", "fashionable", or "amazing", depending on context.
History
The word ...
* List of JVM languages
This list of JVM languages comprises notable computer programming languages that are used to produce computer software that runs on the Java virtual machine (JVM). Some of these languages are interpreted by a Java program, and some are compiled ...
* Apache JMeter
References
Bibliography
*
External links
JSR 223: Scripting for the Java Platform Specification Request
*
*
*
for Java SE
Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java SE was formerly known as Java 2 Platform, Standard Edition (J2SE).
The platform uses th ...
14 at Oracle
An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination.
Descript ...
Java specification requests
{{prog-lang-stub