Spark Workers 上缺少 SLF4J 记录器

2024-05-26

我正在尝试通过以下方式运行工作spark-submit.

此作业导致的错误是:

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/Logger
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
    at java.lang.Class.getMethod0(Class.java:2866)
    at java.lang.Class.getMethod(Class.java:1676)
    at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
Caused by: java.lang.ClassNotFoundException: org.slf4j.Logger
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 6 more

不确定这是否重要,但我正在尝试在 Mesos 上的 Docker 容器中运行此作业。 Spark是1.61,Mesos是0.27.1,Python是3.5,Docker是1.11.2。我正在客户端模式下运行。

这是我的要点spark-submit陈述:

export SPARK_PRINT_LAUNCH_COMMAND=true
./spark-submit \
    --master mesos://mesos-blahblahblah:port \
    --conf spark.mesos.executor.docker.image=docker-registry:spark-docker-image \
    --conf spark.mesos.executor.home=/usr/local/spark \
    --conf spark.executorEnv.MESOS_NATIVE_JAVA_LIBRARY=/usr/local/lib/libmesos.dylib \
    --conf spark.shuffle.service.enabled=true \
    --jars ~/spark/lib/slf4j-simple-1.7.21.jar \
    test.py

要点test.py是它从 parquet 加载数据,按特定列对其进行排序,然后将其写回到 parquet。

我添加了--jars当我不断收到该错误时(该错误没有出现在我的驱动程序中 - 我浏览 Mesos 框架以查看每个 Mesos 任务的 stderr 以找到它)

我也尝试添加--conf spark.executor.extraClassPath=http:some.ip:port/jars/slf4j-simple-1.7.21.jar,

因为我注意到当我运行时spark-submit从上面它会输出

INFO SparkContext: Added JAR file:~/spark/lib/slf4j-simple-1.7.21.jar at http://some.ip:port/jars/slf4j-simple-1.7.21.jar with timestamp 1472138630497

但错误没有改变。有任何想法吗?

I found 这个链接 https://stackoverflow.com/questions/33832804/spark-1-5-2-and-slf4j-staticloggerbinder,这让我认为这是一个错误。但该人尚未发布任何解决方案。


我遇到了同样的问题,并且还尝试在 Docker 上运行 Mesos/Spark/Python。

最终为我解决的问题是添加hadoop classpath使用以下命令输出到 Spark 执行器的类路径spark.executor.extraClassPath配置选项。

我运行让它工作的完整命令是:

MESOS_NATIVE_JAVA_LIBRARY=/usr/local/lib/libmesos.so \
${SPARK_HOME}/bin/pyspark --conf spark.master=mesos://mesos-master:5050 --driver-class-path $(${HADOOP_HOME}/bin/hadoop classpath) --conf spark.executor.extraClassPath=$(${HADOOP_HOME}/bin/hadoop classpath)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spark Workers 上缺少 SLF4J 记录器 的相关文章

随机推荐

  • Java 区域设置区分大小写

    我有以下代码来显示当前区域设置 System out println Locale getDefault System out println new Locale en US 上面给出的输出如下 en US en us 如何构造一个 Lo
  • 使用非负约束进行优化

    考虑以下功能 import numpy as np import scipy optimize as opt import math Periodic indexation def pl list i return list i len l
  • React + Redux 和 REST API?

    我在 Node 中构建了一个简单的 CRUD 应用程序 并已在 Express 中完成了其余 API 的创建 我现在正在寻求添加前端功能 并希望使用 React Redux 作为学习练习 然而 似乎所有围绕此的教程都直接使用 Redux 访
  • UnicodeDecodeError:“charmap”编解码器|安装 pip python-stdnum==1.8 时出错

    我对编程还很陌生 所以请耐心等待 当我为正在使用的模块安装一些必需的软件包时 我无法安装python stdnum 1 8 我收到以下错误消息 File C Users 59996 AppData Local Programs Python
  • 如何获取 Jenkins 的 API 令牌

    我正在尝试使用詹金斯REST https en wikipedia org wiki Representational state transferAPI 说明中说我需要 API 密钥 我浏览了所有配置页面才找到它 如何获取 Jenkins
  • 如何分发我的应用程序的多个版本?

    我想分发我的应用程序的两个版本 稳定分支以及当前的开发主干 使用试飞 http testflightapp com 而且 如果可能的话 我只想邀请测试人员一次 我可以在一个 TestFlight 团队中拥有一个应用程序的两个版本吗 或者也许
  • 为 Nimbus 外观设计简单的单元渲染器

    我有一个简单的单元格渲染器 它由一些组成JLabels 渲染器本身扩展JPanel 并且我正在尝试让它在 Nimbus 的外观和感觉中合理地渲染 基本上发生的事情是在lighter行 正如 Nimbus 所具有的交替行着色 我的特定单元格渲
  • 基于动态资源的样式

    看来这样的事情是不允许的 有什么解决办法吗
  • 在单独的终端屏幕上显示 git diff 和 git log 输出

    设置新的开发环境后 我遇到了一个奇怪的 git 行为 我不记得过去见过 我习惯于git diff and git log在终端中创建一个新屏幕并在其中显示其输出 什么less默认情况下 我用它作为我的寻呼机 然后我可以退出并返回到之前的终端
  • Fortran的性能

    Fortran 的表现计算机语言基准游戏 http shootout alioth debian org 出奇的糟糕 今天的结果显示 Fortran 在两项四核测试中分别排名第 14 和第 11 在单核测试中排名第 7 和第 10 现在 我
  • 管道 - 将多个来源/生产者合并为一个

    我正在使用读取文件sourceFile 但我还需要在处理操作中引入随机性 我认为最好的方法是拥有一个这样的制片人 Producer m StdGen ByteString 其中 StdGen 用于生成随机数 我打算让生产者执行 source
  • Elasticsearch:带有停用词消除功能的带状疱疹

    我正在尝试实现一个 Elasticsearch 映射来优化大量文本中的短语搜索 根据中的建议本文 http www elasticsearch org blog searching with shingles 我使用 shingle 过滤器
  • 有没有办法创建与元素不同的盒子阴影形状?

    当我将鼠标悬停在复选框输入上时 我尝试在复选框输入上创建圆形框阴影 但它采用元素的形状 如何将框阴影的形状更改为圆形
  • 将变量作为 IIFE 中的属性返回

    我试图在 IIFE 初始化后返回一个变量集作为属性 问题是 如果我直接绑定变量 我会得到一个空对象 如果我通过函数绑定它 我就会得到我想要的结果 var Application function var localInformation f
  • eBay API 调用不适用于 UPC/EAN

    eBay 的 API findItemsByProduct 操作适用于 UPC 和 EAN 但不幸的是它不起作用 例如 下面的 HTTP GET 请求会抛出 无效的产品 ID 值 错误41 Note 请将 SECURITY APPNAME
  • 发送带有附件的 PHP HTML 邮件

    我遇到了一个问题 直到今天 我使用 PHP 发送 HTML 电子邮件 其中包含的标头 Content type text html 现在 我添加了添加附件的功能 为此 我必须将此行更改为 Content Type multipart mix
  • 应该有 还是 应该有

    我正在读马克 皮尔格姆的 深入研究 HTML5 http www diveintohtml5 net semantics html 并且在语义部分 http www diveintohtml5 net semantics html new
  • WebView 的自定义用户代理

    我可以为一个设置自定义用户代理吗WebView 我需要展示网站的移动风格 这很容易做到 string ua Mozilla 5 0 iPhone CPU iPhone OS 6 0 like Mac OS X AppleWebKit 536
  • Python daysBetweenDate

    我想我可能有一个无限循环 因为每当我运行代码时 我都会收到一条错误消息 它说 程序因使用 13 CPU 秒而关闭 整个代码 应该以日期作为输入并输出第二天 此代码假设所有月份都是 30 天 除了daysBetweenDates功能正常 其他
  • Spark Workers 上缺少 SLF4J 记录器

    我正在尝试通过以下方式运行工作spark submit 此作业导致的错误是 Exception in thread main java lang NoClassDefFoundError org slf4j Logger at java l