SLF4J: Found binding in [jar:file:/usr/local/apache-hive-3.1.3-bin/lib/log4j-slf4j-impl-2.17.1.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hadoop-3.3.5/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/tez/lib/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class]

时间: 2023-08-19 14:06:47 浏览: 70
这是一段日志信息,它提示了 SLF4J 在三个不同的 jar 包中找到了绑定信息。其中,log4j-slf4j-impl-2.17.1.jar、slf4j-reload4j-1.7.36.jar 和 slf4j-log4j12-1.7.30.jar 都包含了 org.slf4j.impl.StaticLoggerBinder 类的实现。这可能会导致日志系统出现冲突或异常。需要检查这些 jar 包的版本和使用情况,以避免出现问题。
相关问题

slf4j: class path contains multiple slf4j bindings. slf4j: found binding in [jar:file:/usr/local/hive/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/staticloggerbinder.class] slf4j: found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf

### 回答1: 这是一个警告信息,表示在路径中包含了多个不同的Slf4j(简单日志门面)绑定。在这个例子中,一个Slf4j绑定在/usr/local/hive/lib/目录下的log4j-slf4j-impl-2.10.0.jar文件中,另一个绑定在/usr/local/hadoop/share/hadoop/common/lib/目录下的slf文件中。可能需要检查系统配置,以消除这种绑定重复的情况。 ### 回答2: 4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]。 这个错误信息是因为在程序运行时,发现有多个SLF4J日志绑定在类路径中。SLF4J是一个简化日志系统的接口,它的目的是让应用程序能够方便地切换不同的日志实现。由于SLF4J是一个接口,而实现SLF4J的日志库有很多,例如Log4j、Logback、Java Util Logging、Commons Logging等等,这些库都可以实现SLF4J所定义的接口,因此在使用SLF4J时,需要一个SLF4J实现和一个日志库实现。 在这个错误信息中,我们可以看到有两个不同的SLF4J绑定,一个在hadoop的lib目录下的slf4j-log4j12-1.7.25.jar中,另一个则在hive的lib目录下的log4j-slf4j-impl-2.10.0.jar中。这两个绑定都包含了同样的类,因此会产生冲突。 在解决这个错误之前,需要了解应用程序使用的日志库和SLF4J实现。如果使用的是Log4j,那么可以删除hive中的log4j-slf4j-impl-2.10.0.jar,因为Log4j本身已经包含了SLF4J。如果使用的是其他日志库,可以将hadoop中的slf4j-log4j12-1.7.25.jar删除,因为其他日志库中也都包含了SLF4J。 如果应用程序必须使用两个不同的日志库,可以使用exclude命令排除不需要的库,例如在pom.xml文件中排除hadoop的slf4j-log4j12-1.7.25.jar。这样就可以避免SLF4J的多重绑定问题。 总之,在遇到SLF4J多重绑定错误时,需要了解应用程序使用的日志库和SLF4J实现,并使用适当的方法解决冲突。 ### 回答3: 这个错误信息意味着项目中同时存在多个slf4j的绑定器。在这种情况下,slf4j会自动选择其中之一,但是选择哪一个并不明确。由于绑定器的实现方式可能不同,这可能会导致日志输出上的问题。因此,最好只保留一种绑定器。 在这个具体例子中,错误信息显示了两个slf4j绑定器的位置。第一个是在 "/usr/local/hive/lib/log4j-slf4j-impl-2.10.0.jar" 中,而第二个在 "/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar" 中。两个绑定器都与log4j有关,这意味着项目中同时使用了log4j和slf4j。 为了解决这个问题,应该确保只使用一种绑定器。在这个案例中,由于log4j-slf4j-impl-2.10.0.jar已经包含了两者的功能,因此建议删除 "/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar",并重新启动应用程序。 如果你在项目中使用了其他日志库,并且出现了类似的错误信息,解决方案也类似。首先,确定所有库的日志绑定器,然后选择一个主要的绑定器,删除其他绑定器,并重新启动应用程序。

hadoop@dblab-VirtualBox:/usr/local/hive$ ./bin/hive --service hiveserver2 -hiveconf hive.server2.thrift.port=10000 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/usr/local/hive/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

这是一个警告信息,它提示当前的 classpath 中存在多个版本的 SLF4J 绑定,其中一个绑定来自 Hive 的依赖库(log4j-slf4j-impl-2.4.1.jar),另一个绑定来自 Hadoop 的依赖库(slf4j-log4j12-1.7.10.jar)。 这个警告通常不会影响 Hive 的正常运行,但是建议将多余的 SLF4J 绑定从 classpath 中移除,以避免潜在的问题。可以将其中一个绑定从相应的依赖库中删除,或者将其排除在 Hive 或 Hadoop 的依赖中。 如果你想要忽略这个警告,可以在启动 HiveServer2 时加上 -v 参数,这样警告信息就会被输出到日志文件中而不是控制台。例如: ``` ./bin/hive --service hiveserver2 -hiveconf hive.server2.thrift.port=10000 -v > hive.log 2>&1 & ``` 这样启动 HiveServer2 后,警告信息就会被输出到 hive.log 文件中。

相关推荐

最新推荐

recommend-type

智慧物流医药物流落地解决方案qytp.pptx

智慧物流医药物流落地解决方案qytp.pptx
recommend-type

JAVA物业管理系统设计与实现.zip

JAVA物业管理系统设计与实现
recommend-type

基于java的聊天系统的设计于实现.zip

基于java的聊天系统的设计于实现
recommend-type

Vue数字孪生可视化建模系统源码.zip

vueVue数字孪生可视化建模系统源码.zip vueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zipvueVue数字孪生可视化建模系统源码.zip
recommend-type

基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip

基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip基于UCI Heart Disease数据集的心脏病分析python源码+数据集+演示ppt+详细资料.zip
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

解释minorization-maximization (MM) algorithm,并给出matlab代码编写的例子

Minorization-maximization (MM) algorithm是一种常用的优化算法,用于求解非凸问题或含有约束的优化问题。该算法的基本思想是通过构造一个凸下界函数来逼近原问题,然后通过求解凸下界函数的最优解来逼近原问题的最优解。具体步骤如下: 1. 初始化参数 $\theta_0$,设 $k=0$; 2. 构造一个凸下界函数 $Q(\theta|\theta_k)$,使其满足 $Q(\theta_k|\theta_k)=f(\theta_k)$; 3. 求解 $Q(\theta|\theta_k)$ 的最优值 $\theta_{k+1}=\arg\min_\theta Q(
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。