其他分享
首页 > 其他分享> > Maven编译Scala报错StackOverflowError

Maven编译Scala报错StackOverflowError

作者:互联网

Maven 编译时出现 error: java.lang.StackOverflowError

前言

看这个错误大部分就是因为java线程栈出现的问题,但是现在说的这个不是这个原因导致的,不知道有没有听说过【在scala-2.10.x版本种,case class的元素超过22个以后即会编译报错】,我这个也确实是因为一个case class 成员多导致的,大约有130多个成员变量左右,但是我的是 scala_2.11所以感觉应该不会是版本导致的问题,实验过程中当成员限制到100左右后就没问题,当然我也懒的再去拆解case class

网上的解决办法(我的未解决)

网上说的原因感觉也是没有问题,就是加大线程栈的大小就行,就是 -Xss = -XX:ThreadStackSize 设置这个参数

可能是我自己设置的问题,反正以上的方法没能成功,说一下,我的工程是用的自己的maven,不是idea自带的。

网上的解决办法(我的已解决)

网上还有一个是解决了我的问题,这个方法是将配置参数直接加到pom文件里面
https://blog.csdn.net/qq_21997625/article/details/113628160

<plugin>
    <groupId>net.alchim31.maven</groupId>
    <artifactId>scala-maven-plugin</artifactId>
    <version>3.4.0</version>
    
    <!-- 这里是需要添加的部分-->
    <configuration>
        <displayCmd>true</displayCmd>
        <jvmArgs>
            <jvmArg>-Xss20m</jvmArg>
        </jvmArgs>
    </configuration>
    
    
    <executions>
        <execution>
            <goals>
                <goal>compile</goal>
                <goal>testCompile</goal>
            </goals>
        </execution>
    </executions>
</plugin>

标签:case,maven,scala,StackOverflowError,Maven,报错,https,net,class
来源: https://blog.csdn.net/branwel/article/details/120642926