我有一个大型的 scala 代码库。 (https://opensource.ncsa.illinois.edu/confluence/display/DFDL/Daffodil%3A+Open+Source+DFDL)
这就像 70K 行 scala 代码。我们在 scala 2.11.7
开发变得越来越困难,因为编译 - 编辑 - 编译 - 测试 - 调试周期对于小的更改来说太长了。
增量重新编译时间可能是一分钟,这是没有开启优化的。有时更长。那是因为没有将很多更改编辑到文件中。有时一个非常小的变化会导致大量的重新编译。
所以我的问题是:我可以通过组织代码来做些什么来缩短编译时间?
例如,将代码分解成更小的文件?这会有帮助吗?
例如,更小的图书馆?
例如,避免使用隐式? (我们很少)
例如,避免使用特征? (我们有吨)
例如,避免大量进口? (我们有很多 - 包边界在这一点上非常困惑)
或者我真的无能为力吗?
我觉得这个非常长的编译在某种程度上是由于依赖关系导致的大量重新编译,我正在考虑如何减少错误的依赖关系......但这只是一个理论
我希望其他人可以阐明我们可能会做的一些事情,这将提高增量更改的编译速度。
最佳答案
一些可能有帮助的想法 - 取决于您的案例和开发风格:
~compile
在 SBT 中或由您的 IDE 提供。 关于scala - 我可以对我的 scala 代码做些什么,以便它编译得更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40413708/