Spark使用踩坑完全(并不)指南

csdnhadoop 2020-06-04

1.java编译报错

错误
Error: A JNI error has occurred, please check your installation and try again

Spark使用踩坑完全(并不)指南
??下面还有其他报错但我没有截到,但问题的原因都是这个??

这个错误一般情况是由于java 版本 与javac 版本不同所导致的报错,即在cmd命令下分别使用java -versionjavac -version得到的版本号是不一样的
如果你是这种原因的话,使用旧版本java卸载工具将旧版本卸载即可
但是!!! 我们(我)并没有用这种办法解决问题QAQ
所以我的问题在于Hadoop的JAVA_HOME版本设置未更改,关于Hadoop的JAVA_HOME修改可以参考:

编辑文件C:\Hadoop\etc\hadoop\hadoop-env.cmd,将语句:
“set JAVA_HOME=%JAVA_HOME%”
修改为“set JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_192”。
(注意:此处有坑。如果将hadoop-env.cmd中的JAVA_HOME设置为“C:\Program Files\Java\jdk1.8.0_192”,将会出错,因为路径中不能含有空格。)

但但但是!!我的问题依然没有解决,那么咋办呢?
修改spark的启动脚本就可以了!,具体位置在:
Spark使用踩坑完全(并不)指南
修改slaves.sh文件,在文件的顶端添加:

# 解决方法:
在启动脚本最前边添加系统参数,指定Java版本
export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64/jre      //这里使用你自己的JAVA_HOME

就可以了!

相关推荐