Mac 下使用Spark不能加载本地Hadoop库问题解决

在Mac上安装测试Spark时,在执行一个Job(用Python调用)时出现如下错误:java

Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
17/11/22 11:01:22 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

虽然不影响执行,可是看着别扭。由于在使用Hadoop时,也出现了此类警告,经过在本机Build源码,创建基于本机平台的libhadoop.dylib动态库(备注:若是是Linux系统,是libhadoop.so),已经解决这个问题,使用Spark出现此类问题,说明spark找不到这个库,鉴于Spark采用Java开发,查找和加载相关类库是经过$JAVA_HOME,看到在这个目录的jre/lib下有个native目录,保存的都是dylib文件,试着将Hadoop安装目录下lib/native中的libhadoop.dylib文件拷贝到这来,从新执行程序,再也不出现此警告。web