Java 9中JShell中的不同启动脚本是什么?

Java 9中JShell中的不同启动脚本是什么?

JShell 是一个交互式的Java Shell工具,可以从JShell执行代码并立即显示输出。JShell是一个REPL (Read-Evaluate-Print-Loop)工具,可以从命令行提示符运行。

在JShell中,有一个选项可以在启动时加载一个包含一些特殊预定义选项的脚本。可以使用"--startup"标志来指定这些选项,可以传入文件名或DEFAULT、JAVASE和PRINTING之一。我们可以使用"/list -start"命令来查看所有要评估的启动代码片段。

  • DEFAULT: 它加载默认行为。这与根本没有指定相同。
  • JAVASE: 默认情况下导入所有Java SE包。
  • PRINTING: 定义用于打印的函数print、println和printf。

在下面的代码片段中,我们可以使用"DEFAULT"作为启动脚本。

C:\Users\User>jshell --startup DEFAULT
| 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.*;

在下面的代码片段中,我们可以将"JAVASE"用作启动脚本。

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

jshell> /list -start

s1 : import java.applet.*;
s2 : import java.awt.*;
s3 : import java.awt.color.*;
s4 : import java.awt.datatransfer.*;
s5 : import java.awt.desktop.*;
s6 : import java.awt.dnd.*;
s7 : import java.awt.event.*;
s8 : import java.awt.font.*;
s9 : import java.awt.geom.*;
s10 : import java.awt.im.*;
s11 : import java.awt.im.spi.*;
s12 : import java.awt.image.*;
s13 : import java.awt.image.renderable.*;
s14 : import java.awt.print.*;
s15 : import java.beans.*;
s16 : import java.beans.beancontext.*;
s17 : import java.io.*;
s18 : import java.lang.*;
s19 : import java.lang.annotation.*;
s20 : import java.lang.instrument.*;
s21 : import java.lang.invoke.*;
s22 : import java.lang.management.*;
s23 : import java.lang.module.*;
s24 : import java.lang.ref.*;
s25 : import java.lang.reflect.*;
s26 : import java.math.*;
s27 : import java.net.*;
s28 : import java.net.spi.*;
s29 : import java.nio.*;
s30 : import java.nio.channels.*;
s31 : import java.nio.channels.spi.*;
s32 : import java.nio.charset.*;
s33 : import java.nio.charset.spi.*;
s34 : import java.nio.file.*;
s35 : import java.nio.file.attribute.*;
s36 : import java.nio.file.spi.*;
s37 : import java.rmi.*;
s38 : import java.rmi.activation.*;
s39 : import java.rmi.dgc.*;
s40 : import java.rmi.registry.*;
s41 : import java.rmi.server.*;
s42 : import java.security.*;
s43 : import java.security.acl.*;
s44 : import java.security.cert.*;
s45 : import java.security.interfaces.*;
s46 : import java.security.spec.*;
s47 : import java.sql.*;
s48 : import java.text.*;
s49 : import java.text.spi.*;
s50 : import java.time.*;
s51 : import java.time.chrono.*;
s52 : import java.time.format.*;
s53 : import java.time.temporal.*;
s54 : import java.time.zone.*;
s55 : import java.util.*;
s56 : import java.util.concurrent.*;
s57 : import java.util.concurrent.atomic.*;
s58 : import java.util.concurrent.locks.*;
s59 : import java.util.function.*;
s60 : import java.util.jar.*;
s61 : import java.util.logging.*;
s62 : import java.util.prefs.*;
s63 : import java.util.regex.*;
s64 : import java.util.spi.*;
s65 : import java.util.stream.*;
s66 : import java.util.zip.*;
s67 : import javax.accessibility.*;
s68 : import javax.annotation.processing.*;
s69 : import javax.crypto.*;
s70 : import javax.crypto.interfaces.*;
s71 : import javax.crypto.spec.*;
s72 : import javax.imageio.*;
s73 : import javax.imageio.event.*;
s74 : import javax.imageio.metadata.*;
s75 : import javax.imageio.plugins.bmp.*;
s76 : import javax.imageio.plugins.jpeg.*;
s77 : import javax.imageio.plugins.tiff.*;
s78 : import javax.imageio.spi.*;
s79 : import javax.imageio.stream.*;
s80 : import javax.lang.model.*;
s81 : import javax.lang.model.element.*;
s82 : import javax.lang.model.type.*;
s83 : import javax.lang.model.util.*;
s84 : import javax.management.*;
s85 : import javax.management.loading.*;
s86 : import javax.management.modelmbean.*;
s87 : import javax.management.monitor.*;
s88 : import javax.management.openmbean.*;
s89 : import javax.management.relation.*;
s90 : import javax.management.remote.*;
s91 : import javax.management.remote.rmi.*;
s92 : import javax.management.timer.*;
s93 : import javax.naming.*;
s94 : import javax.naming.directory.*;
s95 : import javax.naming.event.*;
s96 : import javax.naming.ldap.*;
s97 : import javax.naming.spi.*;
s98 : import javax.net.*;
s99 : import javax.net.ssl.*;
s100 : import javax.print.*;
s101 : import javax.print.attribute.*;
s102 : import javax.print.attribute.standard.*
s103 : import javax.print.event.*;
s104 : import javax.rmi.ssl.*;
s105 : import javax.script.*;
s106 : import javax.security.auth.*;
s107 : import javax.security.auth.callback.*;
s108 : import javax.security.auth.kerberos.*;
s109 : import javax.security.auth.login.*;
s110 : import javax.security.auth.spi.*;
s111 : import javax.security.auth.x500.*;
s112 : import javax.security.cert.*;
s113 : import javax.security.sasl.*;
s114 : import javax.sound.midi.*;
s115 : import javax.sound.midi.spi.*;
s116 : import javax.sound.sampled.*;
s117 : import javax.sound.sampled.spi.*;
s118 : import javax.sql.*;
s119 : import javax.sql.rowset.*;
s120 : import javax.sql.rowset.serial.*;
s121 : import javax.sql.rowset.spi.*;
s122 : import javax.swing.*;
s123 : import javax.swing.border.*;
s124 : import javax.swing.colorchooser.*;
s125 : import javax.swing.event.*;
s126 : import javax.swing.filechooser.*;
s127 : import javax.swing.plaf.*;
s128 : import javax.swing.plaf.basic.*;
s129 : import javax.swing.plaf.metal.*;
s130 : import javax.swing.plaf.multi.*;
s131 : import javax.swing.plaf.nimbus.*;
s132 : import javax.swing.plaf.synth.*;
s133 : import javax.swing.table.*;
s134 : import javax.swing.text.*;
s135 : import javax.swing.text.html.*;
s136 : import javax.swing.text.html.parser.*;
s137 : import javax.swing.text.rtf.*;
s138 : import javax.swing.tree.*;
s139 : import javax.swing.undo.*;
s140 : import javax.tools.*;
s141 : import javax.transaction.xa.*;
s142 : import javax.xml.*;
s143 : import javax.xml.catalog.*;
s144 : import javax.xml.crypto.*;
s145 : import javax.xml.crypto.dom.*;
s146 : import javax.xml.crypto.dsig.*;
s147 : import javax.xml.crypto.dsig.dom.*;
s148 : import javax.xml.crypto.dsig.keyinfo.*;
s149 : import javax.xml.crypto.dsig.spec.*;
s150 : import javax.xml.datatype.*;
s151 : import javax.xml.namespace.*;
s152 : import javax.xml.parsers.*;
s153 : import javax.xml.stream.*;
s154 : import javax.xml.stream.events.*;
s155 : import javax.xml.stream.util.*;
s156 : import javax.xml.transform.*;
s157 : import javax.xml.transform.dom.*;
s158 : import javax.xml.transform.sax.*;
s159 : import javax.xml.transform.stax.*;
s160 : import javax.xml.transform.stream.*;
s161 : import javax.xml.validation.*;
s162 : import javax.xml.xpath.*;
s163 : import org.ietf.jgss.*;
s164 : import org.w3c.dom.*;
s165 : import org.w3c.dom.bootstrap.*;
s166 : import org.w3c.dom.events.*;
s167 : import org.w3c.dom.ls.*;
s168 : import org.w3c.dom.ranges.*;
s169 : import org.w3c.dom.traversal.*;
s170 : import org.w3c.dom.views.*;
s171 : import org.xml.sax.*;
s172 : import org.xml.sax.ext.*;
s173 : import org.xml.sax.helpers.*;

在下面的代码片段中,我们可以使用“PRINTING”作为启动脚本。

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

jshell> /list -start

s1 : void print(boolean b) { System.out.print(b); }
s2 : void print(char c) { System.out.print(c); }
s3 : void print(int i) { System.out.print(i); }
s4 : void print(long l) { System.out.print(l); }
s5 : void print(float f) { System.out.print(f); }
s6 : void print(double d) { System.out.print(d); }
s7 : void print(char s[]) { System.out.print(s); }
s8 : void print(String s) { System.out.print(s); }
s9 : void print(Object obj) { System.out.print(obj); }
s10 : void println() { System.out.println(); }
s11 : void println(boolean b) { System.out.println(b); }
s12 : void println(char c) { System.out.println(c); }
s13 : void println(int i) { System.out.println(i); }
s14 : void println(long l) { System.out.println(l); }
s15 : void println(float f) { System.out.println(f); }
s16 : void println(double d) { System.out.println(d); }
s17 : void println(char s[]) { System.out.println(s); }
s18 : void println(String s) { System.out.println(s); }
s19 : void println(Object obj) { System.out.println(obj); }
s20 : void printf(java.util.Locale l, String format, Object... args) { System.out.printf(l, format, args); }
s21 : void printf(String format, Object... args) { System.out.printf(format, args); }

以上就是Java 9中JShell中的不同启动脚本是什么?的详细内容,更多请关注编程之家其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


文章浏览阅读1k次。背景  我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性的构造器、getter、setter、equals、hashcode、toString方法,当要对某个属性进行改变时,比如命名、类型等,都需要重新去生成上面提到的这些方法,那Java中有没有一种方式能够避免这种重复..._非瞬态的属性有哪些
文章浏览阅读3.7k次,点赞2次,收藏7次。构造TreeMap可以指定Comparator,但是不能对value字段进行排序。如果有需求对Value字段排序,例如map存放的是单词,单词出现次数,怎么按单词次数排序呢?可以先将map中的key-value放入list,然后用Collections.sort对list排序,再将排序后的list放入LinkedHashMap,最后返回LinkedHashMap就可以了。LinkedH..._map 按某个属性值排序
文章浏览阅读681次,点赞2次,收藏3次。转自:java发送http的get、post请求Http请求类package wzh.Http;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;imp..._java 报域名未知 但本地 发post 请求成功
文章浏览阅读1.4w次。SpringBoot 项目不加载 application.properties 配置文件产生原因:先是创建的SpringBoot2.几版本的项目,结果发现继续使用1.几版本的配置会有很多的问题,于是在pom.xml中把版本改回了1.5.9,然后发现项目启动时并不会加载 application.properties 配置文件。在下图中可以发现,SpringBoot2.几版本的 resou..._spring 未打包application.properties
文章浏览阅读5k次,点赞2次,收藏2次。命令jar tvf FAMS-0.0.1-SNAPSHOT.war | grep prop说明jar tvf 文件名 | grep 要搜索的内容 jar 命令参数说明用法: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...选项: -c 创建新档案..._虚拟机如何快速查找之前用过的jar包
文章浏览阅读4.5w次,点赞11次,收藏4次。springboot日志配置 logging.path logging.file 注意事项可能有些小伙伴会同时配置 logging.path 和 logging.file,但是又发现其中一个不生效。官方文档中有这么一句:If you want to write log files in addition to the console output youneed to set a..._deprecated configuration property 'logging.path
文章浏览阅读2.9k次。最近用到了json字符串转实体类,转集合的功能,主要代码如下: /** * json 字符串转集合 * * @author lipw * @date 2017年5月10日下午6:08:17 * @param jsonString * @param pojoCalss * 集合中的类 * @return */ public st..._net.sf.json:jsonarray.tocollection日期格式错误
文章浏览阅读2.8k次。最近在做的项目中有一个消息功能,其中像系统消息的实现,就是在消息表中只有一条记录,然后对应每个用户要标记为删除或者已读,就在另一个表中用一条记录的标记。这样设置删除或已读标记的时候,是在另一个表的 Mapper.xml 中操作的,也就不会更新消息表的缓存。有人试图在ABMapper.xml 中采用cache-ref才解决这个问题,不好使。不知道是不是我配得不对。 ABMapper.xm..._多表查询缓存怎么更新
文章浏览阅读3.8w次,点赞4次,收藏14次。一个 Java 项目,除了需要引用 JDK 外,通常都是需要引用第三方 jar 包的,那怎么添加呢?我的作法是这样的:1、将需要引用的 jar 包添加到项目的 resources 目录下,比较多也可以在 resources 下再创建一个目录来保存,这样和配置文件区分开。为什么这么做?主要是考虑把它们也放到版本库中去,做为普通的项目,别人就不能再去找 jar 包了。其实 mave..._将第三方jar包直接放在resources目录下
文章浏览阅读3.2k次。另见:json 转日期出错,JSONArray.toCollection 时间总是转化为当前时间net.sf.json 这个包还真是存在不少问题。上代码:package net.sf.ezmorph.object;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util..._datemorpherex
文章浏览阅读1.6k次。遇到这个问题,有几种可能:1、项目打包的时候 mapping.xml 没有打包进去 2、项目打包的时候,配置文件没有打包进去检查:看看项目的“WEB-INF/classes”目录下,有没有配置文件。完整目录示例:E:Deployapache-tomcatwebappsROOTWEB-INFclasses 3、启用事务处理,但没有做AOP相关配置参考:..._springboot开启定时任务 报这个错org.springframework.beans.factory.beannotofre
文章浏览阅读4.4w次,点赞2次,收藏3次。完整的异常信息:org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 't..._el1008e
文章浏览阅读1.2k次。Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value)。1、按键排序jdk内置的java.util包下的TreeMap<K,V>既可满足此类需求,向其构造方法 TreeMap(Comparator<? super K> comparator) 传入我们自定义的比较器即可实现按键..._java map 按照key排序
文章浏览阅读2.8w次,点赞8次,收藏16次。常用的声明方式(使用静态代码块): public final static Map map = new HashMap(); static { map.put("key1", "value1"); map.put("key2", "value2"); } @SuppressWarnings("serial") private static Map<String, S..._java statis map
文章浏览阅读3.7w次,点赞8次,收藏8次。Consider injecting the bean as one of its interfaces or forcing the use of CGLib-based proxies by setting proxyTargetClass=true on @EnableAsync and/or @EnableCaching.问题描述Spring Boot 项目,启用事务支持时出现以下..._consider injecting the bean as one of its interfaces or forcing the use of c
文章浏览阅读1.2w次,点赞5次,收藏25次。转自: 注解@CrossOrigin解决跨域问题阅读目录:一、跨域(CORS)支持: 二、使用方法: 1、controller配置CORS 2、全局CORS配置 3、XML命名空间 4、How does it work? 5、基于过滤器的CORS支持 三、spring注解@CrossOrigin不起作用的原因 四、参考文章: 阅读正文:注解@Cro..._@corssorigin
文章浏览阅读6.3w次,点赞8次,收藏48次。application.properties 文件和 application.yml 文件有什么区别呢?yml文件的好处,天然的树状结构,一目了然,实质上跟properties是差不多的。官方给的很多demo,都是用yml文件配置的。注意点:1,原有的key,例如spring.jpa.properties.hibernate.dialect,按“.”分割,都变成树状的配置2,key后面的冒号,后_applicaiton.yml
文章浏览阅读2w次,点赞2次,收藏10次。这个问题要从“ java.io.IOException: Server returned HTTP response code: 403 for URL: http://start.spring.io”错误说起,eclipse 创建 spring boot 项目 遇到错误:java.io.IOException: Server returned HTTP response code: 403 fo_cannot determine embedded database driver class for database type none
文章浏览阅读2.3w次,点赞7次,收藏23次。application.yml application.properties prioritystackoverflow 上有个问题是:Can application.properties and application.yml be mixed? Spring Boot 虽然做了大量的工作来简化配置,但其配置依然是相当的复杂!支持的外部配置方式就高达 17 种之多,当然这很灵活,..._apollo和application.yml的优先级
文章浏览阅读8.3k次。p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco}项目启动后,控制台输出中有以下内容:[org.mybatis.spring.mapper.ClassPathMapperScanner]-No MyBatis mapper was found in '[com.xxx.xxx.dao]' package. Please check_org.mybatis.spring.mapper.classpathmapperscanner - no mybatis mapper was fou