python - Pyspark 无法使用 Sublime text 3 运行,但可以在终端中运行
问题描述
我有一个可以在终端中完美运行的 Pyspark 程序。但是当我尝试使用 sublime text 3 来构建这个程序时。它显示以下错误:
'cmd' is not recognized as an internal or external command,
operable program or batch file.
Traceback (most recent call last):
File "C:\Users\Sprout G2 Demo\Desktop\test.py", line 3, in <module>
sc = SparkContext("local[*]", "FaceMatch")
File "C:\Spark\spark-2.4.1-bin-hadoop2.7\python\pyspark\context.py", line 133, in __init__
SparkContext._ensure_initialized(self, gateway=gateway, conf=conf)
File "C:\Spark\spark-2.4.1-bin-hadoop2.7\python\pyspark\context.py", line 316, in _ensure_initialized
SparkContext._gateway = gateway or launch_gateway(conf)
File "C:\Spark\spark-2.4.1-bin-hadoop2.7\python\pyspark\java_gateway.py", line 46, in launch_gateway
return _launch_gateway(conf)
File "C:\Spark\spark-2.4.1-bin-hadoop2.7\python\pyspark\java_gateway.py", line 108, in _launch_gateway
raise Exception("Java gateway process exited before sending its port number")
Exception: Java gateway process exited before sending its port number
操作系统是 Windows 10,Java 是 JDK 8,Python 是 3.7
解决方案
我自己想通了。因为我创建了自己的 sublime-build 文件。我在其中添加了一个路径变量。这意味着它不会使用系统环境变量中的路径变量。
我将我的 sublime-build 文件从
{
"cmd": ["python", "-u", "$file"],
"path":"C:/Anaconda3",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"shell": true
}
至
{
"cmd": ["python", "-u", "$file"],
"path":"$path:C:/Anaconda3",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"shell": true
}
推荐阅读
- c++ - 如何实现一个奇怪的for循环
- javascript - 在 Javascript 中使用“this”作为函数应用
- javascript - 用于 JavaScript 中任何内容的 Setter
- r - 仅使用 geom_areas 更改 ggplot2 中的图例颜色
- python - 是否有一种更简洁的方法可以根据字符串中的特定子字符串获取多个变量的平均值
- openjpa - 无法从命令行运行 openjpa 工具
- reactjs - 反应映射每个孩子并为每个孩子添加css样式
- php - 在php中对列表进行分页
- android - 从应用程序的进程中删除 GmsBoundBrokerService
- sql - 如果sql中的所有条件都满足,如何选择记录