年収アップ無料転職カウンセリング実施中! | 転職エージェントはマイナビエージェント

Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職

jshellコマンド

対話式のシェル環境を起動する – jshellコマンド
jshell option
option:コマンドオプション

jshellコマンドは、Javaコードをコマンドライン上で対話式に実行するためのREPL(Read-Eval-Print-Loop)環境を起動します。Java 9で追加されています。
Java 9以前では、簡単なコードを利用するにもコンパイル&実行という手順を踏む必要がありましたが、JShellを利用することでその場で即座に実行できます。
指定できるコマンドオプション(option)には、以下のようなものがあります。。

オプション 概要
--classpath パス 関連するクラスファイルの検索先。複数指定時は、セミコロン(Windows)、またはコロン(Unix)区切り
--module-path パス モジュールの検索先
--enable-preview プレビュー機能を有効化

▲jshellコマンドの主なオプション

たとえば以下はJShellを起動して、簡単なコードを実行する例です。

PS C:\pleiades\java\13\bin> jshell
|  JShellへようこそ -- バージョン13.0.1
|  概要については、次を入力してください: /help intro

jshell> import java.util.ArrayList;	(①インポート)

jshell> new ArrayList<String>();	(②リストを定義)
$2 ==> []

jshell> $2.add("おはよう");	(③リストを操作)
$3 ==> true

jshell> $2.add("こんにちは");
$4 ==> true

jshell> $2.get(0);
$5 ==> "おはよう"

jshell> /exit	(④JShellを終了)
|  終了します

JShellのプロンプトは「jshell> 」です。ライブラリを利用する際には、普通のコードと同じくimport命令でクラスをインポートします(①)。
以降のコード(②~③)は、暗黙的にmainメソッド配下のコードと見なされます。また、変数の宣言も不要です。生成されたオブジェクトは、そのまま自動変数$1、$2…に順に代入されるからです。③でも②で生成したArrayListオブジェクトに変数$2経由でアクセスできています。
JShellを終了するには、/exitメタコマンドを利用します。

コマンド
javacコマンド
javaコマンド
jarコマンド
javadocコマンド
jshellコマンド

年収アップ無料転職カウンセリング実施中! | 転職エージェントはマイナビエージェント

Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職