在jshell启动时加载脚本的不同方法

问题描述 投票:2回答:1

根据文档,

还可以选择在启动时加载脚本,包括一些特殊的预定义选项。这些是使用-startup标志指定的,传入文件名或其中一个:

DEFAULT - 加载默认行为。这与完全没有指定的情况相同

JAVASE - 默认情况下导入所有Java SE包

打印 - 定义print,println和printf函数以供使用

但是,当我使用DEFAULT,JAVASE或PRINTING选项启动jshell时,我可以在所有情况下导入类似的类。

例如,JAVASE中涉及的主要包是java.lang,java.security等,也可以在其他选项中使用。请找到下面的快照:

kv:micro-tab karan.verma$ jshell --startup JAVASE
|  Welcome to JShell -- Version 9.0.1
|  For an introduction type: /help intro

jshell> import javax.security.
auth   cert   sasl   

jshell> /exit
|  Goodbye
kv:micro-tab karan.verma$ jshell --startup DEFAULT
|  Welcome to JShell -- Version 9.0.1
|  For an introduction type: /help intro

jshell> import javax.security
security   

jshell> import javax.security.
auth   cert   sasl   

jshell> /exit
|  Goodbye
kv:micro-tab karan.verma$ jshell --startup PRINTING
|  Welcome to JShell -- Version 9.0.1
|  For an introduction type: /help intro

jshell> import javax.security.
   ...> 
auth   cert   sasl   

我是否以正确的方式使用这些选项?或者还有其他一些含义?

java startup java-9 jshell
1个回答
1
投票

断言方法在您的程序中是不正确的。区分这些预定义脚本的正确方法是使用

/list -start

查看已评估所有启动片段的内容。

例如:-

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.