2017-04-03 97 views
0

我想在IntelliJ上使用Gradle构建一个Scala项目。我能够编译但仍然因堆栈溢出错误而失败。StackOverflowError与斯卡拉上IntelliJ

我查看了其他类似问题的帖子,这些帖子提示增加堆/栈大小(this和​​)。到目前为止,我已经尝试在JAVA_OPTS和idea64.exe.vmoptions中设置它们。

-Xss512m -Xms512m -Xmx2048m -XX:ReservedCodeCacheSize =64米电子艺界

我也试过,包括-XX:MaxPermSize参数=2048米没有工作或者(认为它不支持Java 8)。

为相同配置的另一个人生成相同的代码。任何人都可以请点亮我失踪的东西吗?

详情:

IntelliJ Ultimate 2016.1 
Scala 2.10.3 
Java 1.8.0_92 

堆栈跟踪:

java.lang.StackOverflowError 
    at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:696) 
    at scala.tools.nsc.typechecker.Typers$Typer.runTyper$1(Typers.scala:5396) 
    at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedInternal(Typers.scala:5423) 
    at scala.tools.nsc.typechecker.Typers$Typer.body$2(Typers.scala:5370) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5374) 
    at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$96.apply(Typers.scala:4523) 
    at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$96.apply(Typers.scala:4523) 
    at scala.tools.nsc.typechecker.Typers$Typer.silent(Typers.scala:680) 
    at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:4522) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:4578) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedInAnyMode$1(Typers.scala:5343) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5360) 
    at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:696) 
    at scala.tools.nsc.typechecker.Typers$Typer.runTyper$1(Typers.scala:5396) 
    at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedInternal(Typers.scala:5423) 
    at scala.tools.nsc.typechecker.Typers$Typer.body$2(Typers.scala:5370) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5374) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedQualifier(Typers.scala:5472) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedQualifier(Typers.scala:5480) 
    at scala.tools.nsc.transform.Erasure$Eraser.adaptMember(Erasure.scala:642) 
    at scala.tools.nsc.transform.Erasure$Eraser.typed1(Erasure.scala:696) 
    at scala.tools.nsc.typechecker.Typers$Typer.runTyper$1(Typers.scala:5396) 
    at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$typedInternal(Typers.scala:5423) 
    at scala.tools.nsc.typechecker.Typers$Typer.body$2(Typers.scala:5370) 
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5374) 
    at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$96.apply(Typers.scala:4523) 
    at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$96.apply(Typers.scala:4523) 
    at scala.tools.nsc.typechecker.Typers$Typer.silent(Typers.scala:680) 
    at scala.tools.nsc.typechecker.Typers$Typer.normalTypedApply$1(Typers.scala:4522) 
    at scala.tools.nsc.typechecker.Typers$Typer.typedApply$1(Typers.scala:4578) 
+0

这个异常来自编译器进程,而不是IDEA本身的进程。尝试增加-Xss 设置 - >语言和框架 - > Scala编译服务器 - > JVM参数。 同时检查是否启用了Scala编译服务器。 – niktrop

回答

0

异常是从编译器。您需要更改构思配置中的编译器构建过程堆大小。 前往

File -> Settings -> Build,Excetion,Deployment -> Compiler -> Build process 
heap size(Mbytes) 

增加此属性为更高的值。应该解决这个问题。

enter image description here

0

中的eclipse.ini添加-Xss100m曾在我的情况,很可能将在intellijJ类似性质可能会有帮助。

+0

请问您可以添加更多的信息 – Kondal

+0

我在下面的链接上提出过类似的问题,请按照下面的说明: https://stackoverflow.com/questions/46110844/scala-compiler-stackoverflow-error-when-importing-project?noredirect = 1#comment79185015_46110844 – ankitbaldua