解决方法
我尝试了两个,最后我喜欢直接sbt进行编译.
缺点?我真的很想念能够点击编译错误并直接修复代码,但是在sbt中编译的速度要快得多.
Idea Scala插件的夜间版本可以在质量/性能方面有所不同,但是最近越来越好. Scala插件现在可以标记一些错误,在我不得不运行编译以捕获之前. (例如,我每晚都在运行0.4.693,新的方法检查已经死了.)
我在命令行上使用sbt的生活建议:开始sbt up,并尽可能长时间地交互运行,以利用所有被加载和JIT-ed的优势.
sbt离开运行将最终落在最后,但通过给你更多的记忆在你的sbt包装,你可以使这种情况很少发生.
这是sbt启动包装器,适用于我.
java -xms512M -Xmx1500M -XX:MaxPermSize=512m -jar `dirname $0`/sbt-launch.jar "$@"
sbt 0.7的最大的问题是,它经常返回,并重新编译好似乎只是切合我实际上正在改变的代码的文件. (即使如此,仍然比Idea和fsc更快!)
好消息:sbt 0.9有一些很大的增量编译改进.不幸的是,从0.7到0.9的迁移路线还处于早期阶段.如果您有兴趣,Mark Harrah在nescala的演讲将于http://www.nescala.org/2011/上线.
有用的插件
> http://github.com/mpeltonen/sbt-idea – 轻松创建并保持您的Idea项目与您的sbt项目同步
> http://github.com/orfjackal/idea-sbt-plugin – 让您可以从Idea中创建sbt的运行配置文件(我发现这比去年十月在命令行运行的sbt慢),但是我看到orfjackal还在开发中,所以我应该再给它一个镜头)