Pyspark错误:发送端口号之前,Java网关进程已退出

Avi*_*Avi 8 python python-3.x pyspark jupyter-notebook

我正在使用Pyspark在Jupyter Notebook中运行一些命令,但它抛出错误。我尝试了此链接中提供的解决方案(Pyspark:例外:Java网关进程在发送驱动程序的端口号之前已退出),并且尝试执行此处提供的解决方案(例如,更改C:Java的路径,卸载Java SDK 10并重新安装Java) 8,仍然是抛出我同样的错误。

我尝试卸载并重新安装pyspark,并且尝试从anaconda提示符运行,但仍然遇到相同的错误。我正在使用python 3.7和pyspark版本是2.4.0。

如果使用此代码,则会收到此错误。“异常:Java网关进程在发送其端口号之前已退出”。

from pyspark import SparkContext
from pyspark.sql import SQLContext
sc = SparkContext() 
sqlContext = SQLContext(sc)
from pyspark.mllib.linalg import Vector, Vectors
from nltk.stem.wordnet import WordNetLemmatizer
from pyspark.ml.feature import RegexTokenizer, StopWordsRemover, Word2Vec
Run Code Online (Sandbox Code Playgroud)

但是,如果我从此代码中删除sparkcontext运行正常,但我的解决方案将需要spark上下文。下面没有Spark上下文的代码不会引发任何错误。

from pyspark import SparkContext
from pyspark.sql import SQLContext
from pyspark.mllib.linalg import Vector, Vectors
from nltk.stem.wordnet import WordNetLemmatizer
from pyspark.ml.feature import RegexTokenizer, StopWordsRemover, Word2Vec
Run Code Online (Sandbox Code Playgroud)

如果能得到帮助,我将不胜感激。我正在使用Windows 10 64位操作系统。

这是完整的错误代码图片。

在此处输入图片说明

xil*_*pex 8

在你的 bash 终端中输入这个,它将被修复:

export PYSPARK_SUBMIT_ARGS="--master local[2] pyspark-shell"
Run Code Online (Sandbox Code Playgroud)

所有这些都是导出pyspark-shell到 shell 环境变量PYSPARK_SUBMIT_ARGS


艾瑪艾*_*瑪艾瑪 5

尝试这个

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Run Code Online (Sandbox Code Playgroud)

使用linux为我工作。它也应该适用于windows

此链接将为您提供帮助,因为您是 Windows 用户https://superuser.com/questions/947220/how-to-install-packages-apt-get-install-in-windows