当前位置: 首页 > 面试题库 >

java.io.IOException:无法在Pycharm中使用Spark运行程序“ python”(Windows)

别浩漫
2023-03-14
问题内容

我正在尝试使用Pycharm中的Spark编写一个非常简单的代码,而我的操作系统是Windows8。我一直在解决几个问题,除了一个问题,它还是设法解决了。当我使用pyspark.cmd运行代码时,一切都可以顺利进行,但是在pycharm中使用相同的代码我没有运气。我使用以下代码解决了SPARK_HOME变量的问题:

import sys
import os
os.environ['SPARK_HOME'] = "C:/Spark/spark-1.4.1-bin-hadoop2.6"
sys.path.append("C:/Spark/spark-1.4.1-bin-hadoop2.6/python")
sys.path.append('C:/Spark/spark-1.4.1-bin-hadoop2.6/python/pyspark')

所以现在当我导入pyspark时,一切都很好:

from pyspark import SparkContext

当我想运行其余代码时,问题就出现了:

logFile = "C:/Spark/spark-1.4.1-bin-hadoop2.6/README.md"
sc = SparkContext()
logData = sc.textFile(logFile).cache()
logData.count()

当我收到以下错误消息:

15/08/27 12:04:15 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
java.io.IOException: Cannot run program "python": CreateProcess error=2, The system cannot find the file specified

我已经将python路径添加为环境变量,并且使用命令行可以正常工作,但是我无法弄清楚这段代码的问题。任何帮助或评论,我们将不胜感激。

谢谢


问题答案:

经过两天的努力,我发现了问题所在。我将以下内容作为Windows环境变量添加到“ PATH”变量中:

C:/Spark/spark-1.4.1-bin-hadoop2.6/python/pyspark
C:\Python27

记住,您需要将目录更改为安装spark的位置,并且对于python也是一样。另一方面,我不得不提到我正在使用包含Hadoop的spark的预构建版本。

祝大家好运。



 类似资料:
  • 我是火花编程的新手。我试图使用管道操作符来嵌入外部程序(一组包含编译的C程序、bash和Python脚本的文件)。代码如下所示: sh将调用其他脚本和程序在afile.txt上执行以下操作。 输出错误:

  • Build.Gradle 分级。性质 例外情况: 代码: 有人知道怎么修吗?

  • 我是Spark的新手。我有一个应用程序,通过调用spark shell来运行每个spark sql查询。因此,它将生成一组如下所示的查询,并调用spark shell命令逐个处理这些查询。 Val Query=spark.sql(""SELECT userid as userid,评级为评级,电影为电影从default.movie表""); 现在我想用spark submit而不是spark sh

  • Mesosphere在简化Mesos上运行Spark的过程方面做了很大的工作。我正在使用本指南在Google Cloud Compute上建立一个开发Mesos集群。 https://mesosphere.com/docs/tutorials/run-spark-on-mesos/ 我可以使用运行指南中的示例(查找小于10的数字)。但是,当我试图在本地提交一个与Spark一起正常工作的应用程序时,

  • 我正在使用PyCharm在SSH服务器上进行python的远程部署和执行。但是,我也希望能够以同样的方式直接运行其他文件。例如,我想通过sbatc“运行”一个“job.run”脚本,将其提交给HPC服务器。 我可以看到PyCharm为python运行以下类型的命令 我想有另一个名为“job.run”的文件,运行如下 这感觉应该很简单,但是我找不到任何允许我这么做的选项。

  • 我尝试在IntelliJ中使用play/debug按钮运行或调试程序,我得到错误:找不到或加载主类 我已经从 Spring 启动程序中做了很多事情找不到主类不起作用。但是当我使用命令行并运行时:mvn spring-boot:run 应用程序正在运行并且工作正常。 我的主要方法如下: 我只想通过IntelliJ运行和调试。