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

javaobject oriented programmingprogramming更新于 2025/10/11 19:24:17

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

JShell 工具启动时,代码默认已预加载。要显示此代码,我们只需启动命令"/list -start"。可以使用以下命令要求 JShell 在启动时自动加载它们:"/set start [-retain] [Type]"。第一个选项"-retain"告诉 JShell 记录下一个 JShell 会话所需的 [Type] 启动。如果我们不指定它,则打开新会话时可以启动默认启动项

  /set start [-retain] -File
  /set start [-retain] -Default
  /set start [-retain] -none
  • /set start [-retain] File:此命令告诉 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.*;

相关文章


有用资源