关于IDEA本地运行任务内存不足的问题

本文详细介绍了在Eclipse中开发Spark项目时遇到的内存不足错误,并提供了两种解决方案:一是通过代码配置增加内存;二是设置VMoptions来增大JVM堆大小。此外,还提到了Scala2.11后不支持-make:transitive参数的问题及解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Eclipse里开发spark项目,尝试直接在spark里运行程序的时候,遇到下面这个报错:
ERROR SparkContext: Error initializing SparkContext.
java.lang.IllegalArgumentException: System memory 468189184 must be at least 4.718592E8. Please use a larger heap size.

很明显,这是JVM申请的memory不够导致无法启动SparkContext。

设置方式:

  1. 自己的代码处,可以在conf之后加上:
    conf.set(“spark.testing.memory”, “2147480000”)//后面的值大于512m即可
    或者设置应用程序的 VM options
    idea的设置路径在:Run -Edit Configurations-Application选择对应的程序,设置VM options,如下:
    -Xms512m

  2. 可以在Eclipse的Run Configuration处,有一栏是Arguments,
    下面有VMarguments,在下面添加下面一行(值也是只要大于512m即可)
    -Dspark.testing.memory=1073741824
    其他的参数,也可以动态地在这里设置,比如-Dspark.master=spark://hostname:7077

Scala2.11后不支持-make:transitive参数,打包出现scalac Error: bad option -make:transitive错误的可以选择将scala版本降至2.10或者将pom.xml里的-make:transitive这个配置删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值