4

我正在 Windows 8 上安装 spark 1.2.1,并且我已经下载了 Hadoop 2.4 的预构建包

当我运行pyspark时,出现以下错误:

C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4>bin\pyspark
Running python with PYTHONPATH=C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4\bin\..\python\lib\py4j-0.8.2.1-src.zip;C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4\bin\..\python;
Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
The system cannot find the path specified.
Traceback (most recent call last):
File "C:\Users\Dinesh\Desktop\spark-1.2.1-bin-Hadoop2.4\bin\..\python\pyspark\shell.py", line 45, in <module>
sc = SparkContext(appName="PySparkShell", pyFiles=add_files)
File "C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4\python\pyspark\context.py", line 102, in __init__
SparkContext._ensure_initialized(self, gateway=gateway)
File "C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4\python\pyspark\context.py", line 212, in _ensure_initialized
SparkContext._gateway = gateway or launch_gateway()
File "C:\Users\Dinesh\Desktop\spark-1.2.1-bin-hadoop2.4\python\pyspark\java_gateway.py", line 73, in launch_gateway
raise Exception(error_msg)
Exception: Launching GatewayServer failed with exit code 1!
Warning: Expected GatewayServer to output a port, but found no output.

我已经搜索过,我发现通常错误是由于路径变量未正确定义而引起的,但我已经检查过并且我的变量都已到位。我该如何解决这个错误?“该系统找不到指定的路径。” 它在说哪条路。?

4

3 回答 3

5

就我而言,问题来自我使用的终端。在Windows 上的Git Bash上,我收到错误:line 96: CMD: bad array subscript执行时,但是当我在PowerShellspark-shell上尝试时,它运行良好。

于 2020-12-22T16:45:55.050 回答
1

我调试此问题的方法是在 pyspark.cmd 调用的所有命令文件上重新设置“@echo off”命令。最后,我将 JAVA_HOME 设置为“C:\ProgramData\Oracle\Java\javapath”,这是错误的,因为其中一个 cmd 脚本在调用 java.exe 之前向 JAVA_HOME 添加了一个“\bin”触发“系统找不到指定的路径”。错误。所以我将 JAVA_HOME 更改为“C:\Program Files\Java\jdk1.8.0_25”,它工作正常。

现在我必须取消“@echo off”。希望能帮助到你!

于 2015-06-09T08:12:25.043 回答
0

它可能是由 DOS 类路径中的 cygwin 引起的。Spark 在文件“spark-class2.cmd”中使用 find 命令,然后使用 cygwin find 命令而不是 DOS find 命令,其工作方式有所不同。我从 DOS PATH 中删除了 cygwin,解决了这个问题。

于 2015-03-11T14:48:42.303 回答