Module jdk.jshell

This module provides support for Java Programming Language 'snippet' evaluating tools, such as Read-Eval-Print Loops (REPLs), including the jshell tool. Separate packages support building tools, configuring the execution of tools, and programmatically launching the existing Java shell tool.

The jdk.jshell is the package for creating 'snippet' evaluating tools. Generally, this is only package that would be needed for creating tools.

The jdk.jshell.spi package specifies a Service Provider Interface (SPI) for defining execution engine implementations for tools based on the jdk.jshell API. The jdk.jshell.execution package provides standard implementations of jdk.jshell.spi interfaces and supporting code. It also serves as a library of functionality for defining new execution engine implementations.

The jdk.jshell.tool package supports programmatically launching the jshell tool.

The jdk.jshell.execution package contains implementations of the interfaces in jdk.jshell.spi. Otherwise, the four packages are independent, operate at different levels, and do not share functionality or definitions.

Tool Guides:
jshell
Module Graph:
Module graph for jdk.jshellModule graph for jdk.jshell
Since:
9

Packages

Package Description
jdk.jshell

Provides interfaces for creating tools, such as a Read-Eval-Print Loop (REPL), which interactively evaluate "snippets" of Java programming language code.

jdk.jshell.execution

Provides implementation support for building JShell execution engines.

jdk.jshell.spi

Defines the Service Provider Interface for pluggable JShell execution engines.

jdk.jshell.tool

Provides a mechanism to launch an instance of a Java™ shell tool.

From Packages
java.compiler javax.annotation.processing javax.lang.model javax.lang.model.element javax.lang.model.type javax.lang.model.util javax.tools
java.prefs java.util.prefs
jdk.jdi com.sun.jdi com.sun.jdi.connect com.sun.jdi.connect.spi com.sun.jdi.event com.sun.jdi.request

Modules

Modifier Module Description
transitive java.compiler

Defines the Language Model, Annotation Processing, and Java Compiler APIs.

transitive java.prefs

Defines the Preferences API.

transitive jdk.jdi

Defines the Java Debug Interface.

Services

Type Description
ExecutionControlProvider
Tool
Type Description
ExecutionControlProvider

The provider used by JShell to generate the execution engine needed to evaluate Snippets.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.jshell/module-summary.html