如何在Java 9中自定义JShell的启动?


JShell 是一个交互式的 REPL 工具,用于执行和评估简单的 Java 程序,例如变量声明、语句、表达式等。

JShell 工具启动时,默认情况下会预加载代码。要显示此代码,只需运行命令“/list -start”。可以使用命令“/set start [-retain] [类型]”让 JShell 在启动时自动加载它们。“-retain”选项告诉 JShell 为接下来的 JShell 会话记录所需的 [类型] 启动配置。如果我们不指定它,则在打开新会话时可以启动默认启动配置。

  /set start [-retain] -File
  /set start [-retain] -Default
  /set start [-retain] -none
  • /set start [-retain] 文件: 此命令告诉 JShell 在启动时加载文件的内容(此文件包含创建变量、方法、类等的代码)。
  • /set start [-retain] -none: 此命令告诉 JShell 在启动时不加载任何代码/命令。
  • /set start [-retain] -Default: 此命令将 JShell 的启动重置为其默认值。


在下面的代码片段中,我们可以使用“/set start [-retain] -File”命令。

jshell> /list -start

  s1 : import java.io.*;
  s2 : import java.math.*;
  s3 : import java.net.*;
  s4 : import java.nio.file.*;
  s5 : import java.util.*;
  s6 : import java.util.concurrent.*;
  s7 : import java.util.function.*;
  s8 : import java.util.prefs.*;
  s9 : import java.util.regex.*;
  s10 : import java.util.stream.*;

jshell> /set start -retain save.jsh

jshell> /exit
|   Goodbye

C:\Users\User>jshell
|   Welcome to JShell -- Version 9.0.4
|   For an introduction type: /help intro

jshell> /list -start

  s1 : int x = 20;
  s2 : double y = 30;
  s3 : public int sum(int a, int b) {
          return a + b;
       }
  s4 : String str = "TutorialsPoint";


在下面的代码片段中,我们可以使用“/set start [-retain] -none”命令。

jshell> /set start -retain -none

jshell> /exit
|   Goodbye

C:\Users\User>jshell
|   Welcome to JShell -- Version 9.0.4
|   For an introduction type: /help intro

jshell> /list -start


在下面的代码片段中,我们可以使用“/set start [-retain] -Default”命令。

jshell> /set start -retain -default

jshell> /exit
|   Goodbye

C:\Users\User>jshell
|   Welcome to JShell -- Version 9.0.4
|   For an introduction type: /help intro

jshell> /list -start

  s1 : import java.io.*;
  s2 : import java.math.*;
  s3 : import java.net.*;
  s4 : import java.nio.file.*;
  s5 : import java.util.*;
  s6 : import java.util.concurrent.*;
  s7 : import java.util.function.*;
  s8 : import java.util.prefs.*;
  s9 : import java.util.regex.*;
  s10 : import java.util.stream.*;

更新于:2020年4月13日

160 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.