如何在 Java 9 中在 JShell 中匯入外部庫?


JShell 是一個互動工具,用於學習 Java 語言和原型製作 Java 程式碼。JShell 透過評估使用者鍵入其中的命令來完成工作。此工具的工作原理是REPL (讀入-求值-列印-迴圈)。

預設情況下,當啟動 JShell 會話時,JShell 會自動匯入一些有用的 Java 包。我們可以鍵入命令 /imports 以獲取所有這些匯入的列表。

jshell> /imports
| import java.io.*
| import java.math.*
| import java.net.*
| import java.nio.file.*
| import java.util.*
| import java.util.concurrent.*
| import java.util.function.*
| import java.util.prefs.*
| import java.util.regex.*
| import java.util.stream.*
| import javax.mail.internet.InternetAddress


我們還可以使用以下步驟在JShell中匯入外部庫

如果我們想要建立駐留在 javax.mail.internet 包中的InternetAddress 物件,那麼我們需要在 JShell 中匯入該包。

jshell> import javax.mail.internet.InternetAddress
| Error:
| package javax.mail.internet does not exist
| import javax.mail.internet.InternetAddress;
| ^---------------------------------^


在上面,僅匯入該類不起作用,因為類路徑不知道該包。我們需要使用命令“/env –class-path <jars, class files>”將jars class files 新增到classpath 中。

jshell> /env --class-path \Users\user\mail-1.4.7.jar
| Setting new options and restoring state.

jshell> import javax.mail.internet.InternetAddress


最後,我們可以使用以下方法建立InternetAddress 物件

jshell> InternetAddress from = new InternetAddress("a@a")
from ==> a@a

更新時間:2020 年 2 月 24 日

2K+ 瀏覽

啟動你的 職業生涯

完成課程獲得認證

開始
廣告