java.lang.ClassNotFoundException : org. openx.data.jsonserde.JsonSerDe 错误

标签 java python-2.7 apache-spark hadoop pyspark

我正在尝试使用 iPython 从 Hive 查询表。下面是我的代码的样子。

sqlc = HiveContext(sc)
sqlc.sql("ADD JAR s3://x/y/z/jsonserde.jar")

我首先创建一个新的配置单元上下文,然后尝试添加上面的 jar。以下是我收到的错误消息。

Py4JJavaError: An error occurred while calling o63.sql:
java.lang.ClassNotFoundException: org.openx.data.jsonserde.JsonSerDe

我还可以如何将此 jar 添加到 Spark 类路径?

最佳答案

你得到这个错误是因为你在启动 iPython 时没有在你的 SparkContext 中添加你的库。

为此,您需要运行 shell 执行以下操作:

PYSPARK_DRIVER_PYTHON=ipython bin/pyspark --master local[1] --jars [path/to/jar].jar --driver-class-path [path/to/jar].jar 

注意: 考虑到 SPARK-5185,目前指定 --jars 是不够的.

关于java.lang.ClassNotFoundException : org. openx.data.jsonserde.JsonSerDe 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31421305/

相关文章:

scala - 用于合并的 Spark 结构类型

java - Spring Rest - 生成 Json 数据的异常

java - 在 JasperReports 中显示导出为字节数组的图像

python - 我可以对当前正在写入的文件使用 fdpexpect 吗?

python - 填充表,其中每列来自文本文件的不同行

sorting - 如何在 Spark DataFrame 上应用部分排序?

java - 脚本在在线编辑器中工作,但在 java GroovShell 中不工作(没有这样的属性)

java - 关于java列表删除的问题

python-2.7 - 准备 FMU : Interchanging model parameters for model inputs

java - 在数据集上调用 withColumn 的成本是多少