如何使我的scala程序退出并返回到REPL?

4

我创建了一个scala文件,在REPL中加载后它的效果很好。但是当用户输入“Q”时,我希望它退出程序并返回到REPL。我已经设置了readLine并使用了一个case匹配语句:

case "Q" =>

我不知道该在之后放什么来让程序退出。谢谢。
1个回答

15
您可以使用System.exit(0),但前提是您要fork一个新的控制台/REPL。如果您通过SBT运行,则fork in console := true将实现此目的。如果您从代码中启动REPL并使用run而不是console,则需要fork in run
如果您想运行独立的REPL,然后启动程序并最终将其退出回到REPL,则只需停止读取循环并从调用启动它的入口点方法中返回即可。
考虑到您所包含的代码非常少,很难说更多的事情。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接