环境背景:
- IntelliJ IDEA Community Edition 2017.3.2
- Scala 2.11.8
- Spark 2.2.0
- Hadoop 2.6.0-cdh5.7.0
报错一:
System memory 259522560 must be at least 471859200.
解决方案:
设置Run ->Edit Configurations->Application->VM options为:
-Xms256m -Xmx1024m
报错二:
ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
解决方案:
Hadoop环境缺少winutils.exe文件,
1. 先解压相同版本的Hadoop,再将应版本的这个文件移动到hadoop的bin文件下,或者直接下载一个有winutils的hadoop解压就好了
有winutils的Hadoop下载地址如下:http://www.barik.net/archive/2015/01/19/172716/
2. 最后将Hadoop的路径加入到代码中,我测试加到环境变量中不怎么好使,直接写代码了
System.setProperty("hadoop.home.dir", "D:\\hadoopcdh\\hadoop-2.6.0.tar\\hadoop-2.6.0")