Emacs Scala Ensime:打开REPL不会加载我的项目中的任何内容

时间:2014-02-04 20:49:49

标签: scala emacs ensime

我很确定我已经将Emacs,Ensime,SBT和Scala设置为正常协同工作。我可以在保存时编辑文件并查看类型错误,并成功尝试使用ensime的自动重构工具。

问题是,当我按下C-c C-v z打开REPL时,好像我的文件中没有任何内容被加载。

换句话说,如果我定义类似

的东西

class Moose {}

在我的源文件中,当我尝试使用REPL中的Moose时会发生这种情况

scala> Moose
<console>:8: error: not found: value Moose
              Moose
              ^

scala> new Moose
<console>:8: error: not found: type Moose
              new Moose
                  ^

将当前缓冲区内容加载到REPL中的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

我发现REPL实际上没有问题。我一直试图通过按C-c C-b b来编译我的项目并假设它正在工作,缓冲区*ENSIME-Compilation-Result*会弹出:

Latest Compilation Results (q to quit, TAB to jump to next error)
----------------------------------------

0 errors, 0 warnings.

但是,我检查了target/scala-2.10/classes目录,发现没有生成.class个文件。

当我使用sbt从命令行编译时,我能够以我期望的方式加载REPL。

修改

我发布了一个后续问题:Building with Ensime deletes all .class files, but doesn't compile anything