正如你们许多人所知,编译Scala代码的速度很慢。
为了实现连续集成,可以通过保留旧.class
文件和进行渐进式编译来赢得大量时间。删除.class
文件更安全,但速度要慢得多。
我使用SBT 0.13.9和Scala 2.11.7来编译Scala / Java代码。
我想知道进行增量编译是否可靠,即使切换git分支也是如此。
如果它不安全,怎么检测到它?
答案 0 :(得分:4)
只要它的实现没有错误,它就是安全的。
sbt不是没有bug的,所以你可能总会遇到破坏增量编译的错误。
除非你得到令人难以置信的不幸,否则sbt增量编译中的错误只会导致你的代码库无法编译。
话虽如此,我只是在混合了无形(记录)和蛋糕图案的特定功能时才遇到过一次错误。
在该特定实例中,我不得不手动清理一些.class
文件,以使增量编译器再次工作。
答案 1 :(得分:1)
一般来说,它是可靠的。
但增量编译器具有已知的局限性。
有关详细信息,请查看http://www.scala-sbt.org/0.13.5/docs/Detailed-Topics/Understanding-incremental-recompilation.html