【问题标题】:How to run an external file from within the scala interactive interpreter (REPL)?如何从 scala 交互式解释器(REPL)中运行外部文件?
【发布时间】:2012-03-05 02:26:06
【问题描述】:

我有一个包含几行 scala 代码的文件——导入、列表赋值等,我在使用 REPL 时经常使用这些代码来初始化一些东西。

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

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

【问题讨论】:

    标签: scala interpreter read-eval-print-loop


    【解决方案1】:

    类型:

    :help
    

    你看,那个

    :load <path>               load and interpret a Scala file
    

    解决您的问题。

    在某些情况下,粘贴代码可能更可取,但是

    :paste
    

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

    【讨论】:

    • 谢谢,成功了!我在网络上的任何地方都找不到 REPL 的文档。我什至不知道:help 会显示(有限的)帮助;我在 Windows 命令提示符下尝试了 scala /?scala -help 以及 REPL 中的 help? 等其他内容。
    • 您从哪里得知:paste?它没有与:help 一起列出。显然,您可以访问我不知道的文档。我也想知道:power 是关于什么的。
    • :paste 是 2.9.something 中的新内容,我猜是 2.9.1。 :power 有点老了,我没用过,只是看看它是什么。我想我是从邮件列表中知道的。从 scala 主页我找不到关于 :power 或 REPL 的简短文档。
    • @Gigatron 启动 REPL 时会这样说:Type :help for more information.
    • 不知何故我没有注意到它。我想这是因为我总是立即从我正在谈论的那个文件中复制和粘贴,并且在我阅读样板文本之前,所有内容都会向上滚动并离开屏幕。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-08
    • 2013-09-08
    • 1970-01-01
    • 2015-06-29
    • 1970-01-01
    • 2018-07-11
    • 1970-01-01
    相关资源
    最近更新 更多