spark+Hbase+phoenix项目的时候,使用maven打报的时候

maven clean install -DskipTests

在编译过程中发现报错

java.lang.StackOverflowError

查阅资使用

在maven项目打包的时候报错,java.lang.StackOverflowError

解决方法在setting->maven->runner->VM Options中添加 -Xss4096k 

后问题仍然无法解决。
后经过研究,对于spark,hbase,phoenix等依赖报在环境中存在,不需要打包到jar报中,因此使用

<dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.3.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>2.3.1</version>
            <scope>provided</scope>
        </dependency>

设置provided后重新打包,问题得到解决。
原因分析,应该是spark,hbase依赖包资源较大,打包占用较大的内存,因此才会出现上面的错误。

更多推荐