当我在 Git Bash 的 VS Code 中执行 pytest 时,本地的 pyspark 出错
Posted
技术标签:
【中文标题】当我在 Git Bash 的 VS Code 中执行 pytest 时,本地的 pyspark 出错【英文标题】:Error with pyspark in local when I execute pytest in VS Code from Git Bash 【发布时间】:2020-09-12 09:53:12 【问题描述】:当我在 Git Bash 的 VS Code 中执行 pytest 时,本地出现 pyspark 错误。
如果我从 gitbash 控制台执行 pytest:
当我在可视化代码中创建 spark Dataframe 时,我尝试调试我的代码,给我看:
Java 网关进程在发送其端口号之前退出
我已经在我的电脑中配置了所有的变量环境:
我看到这个错误可能是我的变量 Java 没有配置好,但我检查了它是正确的。
【问题讨论】:
如果它只是关于 Java 路径,那么是的,它不正确,如果你看到你的 PATH 变量,你可以看到还有一个值是C:/....JAVA
并且你也设置了你自己的路径。所以做一件事,从 PATH
变量中删除任何值,从而导致 JAVA。只要确保系统变量中只有一个JAVA_HOME
,它指向bin
dir 而不是bin,然后在PATH
变量中添加JAVA_HOME\bin
试试这个
是真的,我有两个 JAVA_HOME 变量(系统和用户)。我在我的用户帐户中删除了路径 JAVA_HOME。但是对于 PATH 变量,我有同样的情况。是否要将 Path 变量中的 JAVA_HOME\bin 删除到用户帐户中?而且这只在系统账户中
现在从 git-bash 我执行 java -v,不认识它。但是,如果我从 git bash 执行 jupyter notebook,pyspark 真的可以使用这段代码
【参考方案1】:
当我将以下行放入 .bash_profile 文件时,我解决了这个问题:
导出 path_java(在我的电脑中)
这样,当我在 bash 控制台中执行 pytest 时,我通过测试没有问题
虽然在 VS Code 中我没有通过调试器的测试,但我可以继续使用我的 python 库
【讨论】:
【参考方案2】:好像是版本不匹配导致的。由于 '_PYSPARK_DRIVER_CALLBACK_HOST' 在 0.10.7(here) 到 2.3 版本期间已被删除,并从 2.3.1 版本恢复。因此,您应该检查您的 Spark 版本,因为 SPARK_HOME 指向正确的版本(至少 2.3.1)。
来自here
【讨论】:
【参考方案3】:但如果我从 git bash 执行 jupyter notebook,pyspark 真的可以使用这段代码
enter image description here
【讨论】:
以上是关于当我在 Git Bash 的 VS Code 中执行 pytest 时,本地的 pyspark 出错的主要内容,如果未能解决你的问题,请参考以下文章
在 VS Code 中使用 Git Bash 终端 - 如何强制它在内部打开