Java Shell*(jshell*)是一个用于学习和制作Java原型的互动工具。它是在Java 9中引入的,从那时起,我偶尔会用它来做一些快速的原型设计,在演讲中,或者仅仅是为了验证Java语言的新功能。由于jshell是一个命令行工具(有基本的智能提示),在jshell中编辑文件不是最好的体验。幸运的是,jshell允许改变默认的编辑器,并将其设置为你选择的编辑器,包括Visual Studio Code、Atom或Sublime。
我最喜欢的IDE是IntelliJ,它对于一些非常基本的源代码编辑来说是非常困难的,而且它对jshell的内置支持也远非完美。那么为什么不把Visual Studio Code设置为默认的jshell编辑器呢?
为当前的jshell会话设置编辑器
在终端中打开jshell
$ jshell
复制代码
运行jshell命令
jshell> /set editor /usr/local/bin/code -w
| Editor set to: /usr/local/bin/code -w
复制代码
-w
选项设置等待文件被关闭后再返回。
现在你可以通过运行edit
命令来编辑当前会话:
jshell> /edit
复制代码
这将打开Visual Studio Code(如果你已经打开了VSC,它会打开新的标签)。你可以编辑文件,一旦你完成了编辑,保存并关闭文件。
设置编辑器并在jshell会话之间保留设置
如果你想在jshell会话之间保留设置,你需要在设置编辑器时添加retain
标志:
jshell> /set editor -retain /usr/local/bin/code -w
| Editor set to: /usr/local/bin/code -w
| Editor setting retained: /usr/local/bin/code -w
复制代码
在这篇文章中了解我在macOS上使用的工具:macOS:(Java)开发人员的基本工具]。
这里介绍的解决方案也适用于Atom或其他任何有选项的编辑器,可以等待打开的文件被关闭后再返回。
另见
你想轻松切换Java SDK,以便在jshell中玩转新的Java功能吗?请使用SDKMAN!查看这篇博文,了解如何开始使用SDKMAN!。用SDKMAN!轻松管理多个Java SDKs