官术网_书友最值得收藏!

1.3 初識Ammonite REPL

問題

你想開始使用Ammonite REPL并了解它的一些基本功能。

解決方案

Ammonite REPL(https://oreil.ly/jZqSm)的工作方式與Scala REPL一樣:只要下載安裝然后使用amm命令啟動即可。與Scala REPL一樣,Ammonite REPL會對Scala表達式求值,并自動給未分配變量名的變量分配變量名:

但Ammonite有許多額外的功能。你可以用以下命令改變shell提示符:

如果把這些Scala表達式放在foo文件夾的Repl.scala文件中:

那么可以使用以下命令將其導入Ammonite REPL中:

然后就可以在Ammonite中使用這些方法了:

類似地,可以使用Ammonite的$cp變量將文件夾foo中的JAR文件simpletest_3.0.0-0.2.0.jar導入amm REPL會話中:

通過import ivy命令,可以從Maven Central(或者其他資源庫)導入依賴,并在當前的shell中使用它們:

Ammonite的內置time命令可以計算運行代碼所需的時間:

Ammonite的自動補全能力令人印象深刻。只要像下面這樣輸入表達式,然后在小數點后按<Tab>鍵即可:

這么做時,Ammonite會顯示一長串對于字符串x可用的方法:

因為這里不僅顯示了方法名稱,還顯示了它們的輸入參數和返回類型,對于使用者來說很有幫助。

討論

Ammonite還有很多其他的功能。另一個很有用的功能是,可以像UNIX的.bashrc或者.bash_profile一樣提供一個啟動配置文件。只要像下面這樣將表達式放在~/.ammonite/predef.sc文件中即可:

當啟動Ammonite REPL時,提示符將被替換成yo:,而且定義的其他方法也是可用的。

還有一個很有用的功能,即可以保存REPL會話,這將保存之前所有的操作。可以通過下面的代碼進行測試,即在REPL中創建一個變量,然后將其保存到會話中:

然后創建另一個變量:

現在重新加載會話,你會看到像期望的那樣,remember變量仍然可用而forget變量已經不可用了:

也可以像下面這樣通過給會話取名的方式來保存或者恢復多個會話:

關于更多的功能細節,請參閱Ammonite文檔(https://ammonite.io/#Ammonite-REPL)。

主站蜘蛛池模板: 满洲里市| 荣成市| 延寿县| 景德镇市| 兴隆县| 连城县| 德江县| 抚顺市| 繁昌县| 和林格尔县| 灵丘县| 巧家县| 通化市| 新津县| 义乌市| 湄潭县| 长武县| 泗阳县| 石狮市| 阳新县| 庆安县| 郁南县| 绥宁县| 冷水江市| 韶山市| 利津县| 博客| 延川县| 农安县| 商洛市| 石阡县| 星座| 开鲁县| 英山县| 大姚县| 屯留县| 嘉兴市| 炎陵县| 西昌市| 剑阁县| 南宁市|