java - SLF4J 错误 => Windows 7 64 位 & jre、jdk 7

标签 java slf4j

我尝试使用 java 转换器将 thrift 文件转换为 Parquet 文件。

我有错误:

14/06/13 11:51:38 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

我不知道为什么,我使用的是 windows 7 64 位和 intellij 13.1.2,并且我使用 JRE&JDK 7 64 位。

我的 pom.xml 包含:

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-simple</artifactId>
  <version>1.7.7</version>
</dependency>

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.7</version>
</dependency>

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>

谢谢!!

最佳答案

您收到两个不同的警告:

警告:“适用于您平台的 native hadoop 库...”意味着您的系统路径上没有带有 hadoop 优化的 64 位 dll。

警告:“SLF4J:无法加载类“org.slf4j.impl.StaticLoggerBinder””意味着它在类路径上找不到任何 SLF4J 实现。这很奇怪,因为 slf4j-simple 应该包含该类。也许尝试使用 slf4j-over-log4j 而不是 slf4j-simple?

这两种情况都只是警告。缺少 hadoop dll 意味着您无法获得 native 优化,而只能获得纯 java 代码,这可能会慢一些。

缺少 SLF4j 实现意味着您无法从 hadoop 获取任何日志记录,这可能会更不方便。

关于java - SLF4J 错误 => Windows 7 64 位 & jre、jdk 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24202571/

相关文章:

java - SLF4J 桥接所需的配置文件

java - RxJava : difference between doOnNext and doOnEach

java - 减少冗余的设计模式

java - Selenium 元素并不总是可点击

maven - 多个 SLF4J 绑定(bind) activemq-all-5.6.0.jar 出错

logging - 是否可以在运行时更改 AWS Lambda 的日志级别?

Java 如何处理\on 输入

java - 如何通过快速拖动鼠标光标绘制重复椭圆的连续曲线?

java - 获取内存中的日志对象 - Logback

java - SLF4J 如何支持结构化日志记录