2012-03-05 131 views
15

我有一个包含几行scala代码的文件 - 导入,列表赋值等,我经常用它来初始化使用REPL时的一些事情。如何在scala交互式解释器(REPL)中运行外部文件?

目前我只是在文本编辑器中打开文件,并将其复制并粘贴到REPL中,但有没有办法通过以更直接的方式调用外部文件,所以我没有每次都要复制并粘贴?

在某些交互式数据库工具(如SQL Plus)中,通过在提示符下输入@filename来完成。 Scala REPL有类似的东西吗?在@前面的文件名不起作用,eval也不起作用。

回答

23

类型:

:help 

,你看,那

:load <path>    load and interpret a Scala file 

解决您的问题。

在某些情况下,粘贴代码可能是最好不过,但随后

:paste 

可能是你的朋友呢。它有助于插入一个没有反馈的整个块,一行一行,直到你点击了Ctrl + D。在某些情况下,这对代码解释很重要。

+0

谢谢,这工作!我无法在网络上的任何位置找到REPL的文档。我甚至不知道':help'会显示(有限)帮助;我在Windows命令提示符下尝试了其他的东西,比如'scala /?'和'scala -help',以及REPL中的'help'和'?'。 – Gigatron 2012-03-05 02:39:13

+0

你从哪里学习':paste'?它没有用':help'列出。显然你可以访问我不知道的文档。我也想知道':power'是什么。 – Gigatron 2012-03-05 02:45:29

+0

':paste'是2.9的新东西,我猜是2.9.1。 ':power'有点老,我从来没有用过,除了看它是什么。我想我从邮件列表中知道它。从scala主页我找不到关于':power'或REPL的简要文档。 – 2012-03-05 03:33:57

相关问题