Я хотел бы запустить pyspark на MacBook из PyDev / Eclipse.
My pyspark : 2.4.3
My JDK : 1.8.0_222-b10
My python : 3.5.4
MacBook pro : 10.14
Мой код:
from pyspark import SparkContext
logFile = "file:///My_path/pyspark_from_eclipse.txt"
sc = SparkContext("local", "Simple App")
logData = sc.textFile(logFile) #.cache()
wordCounts = logData.map(lambda line: len(line.split())).reduce(lambda a, b: a if (a > b) else b)
for wc in wordCounts.collect() : # error here
print(wc)
Я получил ошибку:
py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: java.lang.IllegalArgumentException: Unsupported class file major version 56
Из этого поста кажется, что это проблема Java-версии. IllegalArgumentException с Spark collect () на Jupyter
Но, мой JDK равен 1.8.0, что должно быть в порядке с PySpark.
Я могу хорошо запустить тот же код из оболочки Shell на той же машине.
Я попытался добавить переменную среды JAVA_HOME в Eclipse, но это приведет к более странным ошибкам.
Кто-нибудь может указать, что мне здесь не хватает в настройках среды Eclipse?