当前位置: 首页 > 知识库问答 >
问题:

错误:必须指定主资源(JAR或Python或R文件)-IPython笔记本

林俭
2023-03-14

我尝试在IPython笔记本中运行Apache Spark,遵循这个insruction(以及注释中的所有建议)-链接

但是当我通过以下命令运行IPython Notebook时:

ipython notebook --profile=pyspark
Error: Must specify a primary resource (JAR or Python or R file)
export SPARK_HOME="$HOME/spark-1.4.0"
export PYSPARK_SUBMIT_ARGS='--conf "spark.mesos.coarse=true" pyspark-shell'
# Configure the necessary Spark environment
import os
import sys

# Spark home
spark_home = os.environ.get("SPARK_HOME")

# If Spark V1.4.x is detected, then add ' pyspark-shell' to
# the end of the 'PYSPARK_SUBMIT_ARGS' environment variable
spark_release_file = spark_home + "/RELEASE"
if os.path.exists(spark_release_file) and "Spark 1.4" in  open(spark_release_file).read():
    pyspark_submit_args = os.environ.get("PYSPARK_SUBMIT_ARGS", "")
    if not "pyspark-shell" in pyspark_submit_args: pyspark_submit_args += " pyspark-shell"
    os.environ["PYSPARK_SUBMIT_ARGS"] = pyspark_submit_args

# Add the spark python sub-directory to the path
sys.path.insert(0, spark_home + "/python")

# Add the py4j to the path.
# You may need to change the version number to match your install
sys.path.insert(0, os.path.join(spark_home, "python/lib/py4j-0.8.2.1-src.zip"))

# Initialize PySpark to predefine the SparkContext variable 'sc'
execfile(os.path.join(spark_home, "python/pyspark/shell.py"))

昨天我把我的OS X升级到了10.10.4

共有1个答案

郭鸿信
2023-03-14

我也遇到了类似的问题,在与spark-1.4.0一起使用时,我使用了相同的00-pyspark-setup.py文件。

正如Philippe Rossignol在此博客上的评论所解释的那样,由于pyspark_submit_args需要参数pyspark-shell,因此将以下行添加到00-pyspark-setup.py文件中:

# If Spark V1.4.x is detected, then add ' pyspark-shell' to
# the end of the 'PYSPARK_SUBMIT_ARGS' environment variable
spark_release_file = spark_home + "/RELEASE"
if os.path.exists(spark_release_file) and "Spark 1.4" in open(spark_release_file).read():
    pyspark_submit_args = os.environ.get("PYSPARK_SUBMIT_ARGS", "")
    if not "pyspark-shell" in pyspark_submit_args: pyspark_submit_args += " pyspark-shell"
    os.environ["PYSPARK_SUBMIT_ARGS"] = pyspark_submit_args

但是,在我的spark-1.4.0文件夹中,没有release文件,因此将pyspark-shell追加到pyspark_submit_argsif条件从未得到满足。

作为一个棘手的解决方案,我只是注释掉了检查发布文件的行,所以只剩下以下几行:

pyspark_submit_args = os.environ.get("PYSPARK_SUBMIT_ARGS", "")
if not "pyspark-shell" in pyspark_submit_args: pyspark_submit_args += " pyspark-shell"
os.environ["PYSPARK_SUBMIT_ARGS"] = pyspark_submit_args
 类似资料:
  • 我的项目升级Gradle到4版后无法编译,Android Studio抛出错误: Android 资源编译失败 C:\用户\用户\AndroidStudioProjects\grow_director_v2_net\app\build\中间\增量\合并DevDebugResources\merged.dir\values\values.xml:1475:错误:内部元素必须是资源引用或为空。C:\用

  • 我在创建工作JAR文件时遇到问题。我可以跑步。类文件如下所示: 但作为jar运行(在构建脚本中)失败: 我将通过使用简单的Hello World项目来简化我遇到的问题: 文件需要进入文件夹。JAR文件需要在文件夹中。是构建JAR文件的bash脚本。如下: 你好世界java: 运行JAR文件,如构建中所示。sh结果 如前所述,直接运行应用程序效果很好。 这是的结构。 的内容。 我已经工作了6年了,现

  • 今天我决定更新Android Studio,因为我安装的3.1版本似乎有点过时了。升级后,由于某种< code >错误,构建项目失败: 全输出: 错误指向构建文件,检查它,我想可能问题出在我的文件上。 我谷歌了一下,发现错误是由这样解析的项目引起的: 并且可以通过将代码替换为如下内容来解决: 但是我应该用字符串数组做什么呢?。

  • 我是Liquibase的新手,我尝试将liquibase与postgres数据库一起使用liquibase脚本创建数据库表。我所做的是,我已经手动创建了Postgres表并通过运行命令 mvn液化酶:generateChangeLog 我创建了liquibase-outputChangeLog.xml文件。现在我尝试更新该脚本并在数据库中创建一个表。为此,我将XML代码写入新表的ChangeLog

  • 错误详细信息 生成环境 Android Studio 3.1.4 minSDKversion=21 目标SDKVersion=28 CompilesDKVersion=28 BuildToolsVersion=“28.0.2”

  • 如何修复 创建示例helm图表名称为my图表,并使用nginx服务编写deployment.yaml、service.yaml、ingress.yaml 预期输出:......