PySpark报错pyspark.sql.utils.IllegalArgumentException: 'Unsupported class file major version 56'

今天遇到下面的报错:

py4j.protocol.Py4JJavaError: An error occurred while calling o41.collectToPython.
: java.lang.IllegalArgumentException: Unsupported class file major version 56

 

在网上查相似的问题,应该是JDK版本的原因。


更新:查了好几天终于找出原因了,附带解决方法。

1、查看电脑上的Java版本,Pycharm中自带的Java版本是11.0,而Hadoop的Java版本是12.0。

2、查看问题中的描述,Unsupported class file major version 56。在国外网站上查到,version 56是指Java12,所以是Hadoop中的Java12.0的原因。

参考的网址是:https://www.baeldung.com/java-lang-unsupportedclassversion

3、解决方法:改变系统里的Java版本(尽量降版本),也记得要改变配置的环境变量。

在我的电脑上,试了3个jdk版本,jdk-12.0.1(version 56)报错,jdk-11.0.4(version55)还是报错,最终用jdk1.8.0_201成功~

jdk下载的地址是:https://www.oracle.com/technetwork/java/javase/downloads/index.html

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 博客之星2020 设计师:CY__ 返回首页