走出斯卡拉编译过程中内存不足的错误(Out of memory error during Scala

2019-10-18 22:39发布

我使用的是宏观重scala-pickling沿着shapeless ,和我保持崩溃斯卡拉2.9.3编译器有明显的内存不足的错误。 错误消息的尾部看起来是这样的:

[error]     <tpt> // tree.tpe=tasks.anonfun$218
[error]     Block( // tree.tpe=Unit
[error]       Apply( // def <init>(): scala.runtime.AbstractFunction1 in class AbstractFunction1, tree.tpe=scala.runtime.AbstractFunction1
[error]         SimpleMiddlebury$$anonfun$218.super."<init>" // def <init>(): scala.runtime.AbstractFunction1 in class AbstractFunction1, tree.tpe=()scala.runtime.AbstractFunction1
[error]         Nil
[error]       )
[error]       ()
[error]     )
[error]   )
[error] )
[error] 
[error] == Expanded type of tree ==
[error] 
[error] ConstantType(value = Constant(anon$326))
[error] 
[error] uncaught exception during compilation: java.io.IOException
[error] Cannot allocate memory

我在我的监控系统内存,并且有大量的,因此,如果这是真的内存分配的问题,我猜有一些JVM标志,我可以设置的地方,使问题消失。

不过,我尝试增加可用内存,通过调整堆设置paulp的SBT脚本-Xmx8g ,我仍然得到这个错误。 这是正确的国旗?

想法?

编辑:我添加了“斯卡拉 - 酸洗”和“无形”的标签,因为这是这些库的一些其他用户可能都遇到过。

Answer 1:

在SBT安装目录存在一个文件./bin/sbt

更新此文件中的-Xss设置了较高的门槛。 将其设置为-Xss8M,就足以让我的无形的堆栈溢出编译问题走开



文章来源: Out of memory error during Scala compilation