Java 未能加载类“;org.slf4j.impl.StaticLoggerBinder”的;在卡夫卡河?
我正在GCP机器内用Java实现ApacheKafka流应用程序。我使用的是卡夫卡2.12版 参考网址- 在这里,我可以设置maven项目。然后我可以在我的kafka目录中看到stream.example的树结构。 我能够执行mvn clean包,这将使构建成功。 下一个命令是mvn exec:java-Dexec.mainClass=myapps.Pipe,它正在发出警告并被卡住。。。见附件截图 这里我们可以看到我的pom.xml文件Java 未能加载类“;org.slf4j.impl.StaticLoggerBinder”的;在卡夫卡河?,java,maven,apache-kafka,slf4j,apache-kafka-streams,Java,Maven,Apache Kafka,Slf4j,Apache Kafka Streams,我正在GCP机器内用Java实现ApacheKafka流应用程序。我使用的是卡夫卡2.12版 参考网址- 在这里,我可以设置maven项目。然后我可以在我的kafka目录中看到stream.example的树结构。 我能够执行mvn clean包,这将使构建成功。 下一个命令是mvn exec:java-Dexec.mainClass=myapps.Pipe,它正在发出警告并被卡住。。。见附件截图 这里我们可以看到我的pom.xml文件 <project xmlns="http://ma
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>streams.examples</groupId>
<artifactId>streams.examples</artifactId>
<version>0.1</version>
<packaging>jar</packaging>
<name>Kafka Streams Quickstart :: Java</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<kafka.version>2.2.0</kafka.version>
<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>
</properties>
<repositories>
<repository>
<id>apache.snapshots</id>
<name>Apache Development Snapshot Repository</name>
<url>https://repository.apache.org/content/repositories/snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<!--
Execute "mvn clean package -Pbuild-jar"
to build a jar file out of this project!
-->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerId>jdt</compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-compiler-jdt</artifactId>
<version>0.21.0</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<versionRange>[2.4,)</versionRange>
<goals>
<goal>single</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<versionRange>[3.1,)</versionRange>
<goals>
<goal>testCompile</goal>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<!-- Apache Kafka dependencies -->
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-streams</artifactId>
<version>${kafka.version}</version>
</dependency>
</dependencies>
4.0.0
流。示例
流。示例
0.1
罐子
Kafka Streams Quickstart::Java
UTF-8
2.2.0
1.7.7
1.2.17
apache.snapshots
Apache开发快照存储库
https://repository.apache.org/content/repositories/snapshots/
假的
真的
org.apache.maven.plugins
maven编译器插件
3.1
1.8
1.8
maven编译器插件
1.8
1.8
jdt
org.slf4j
slf4j简单
1.7.25
org.eclipse.tycho
第谷编译器jdt
0.21.0
org.eclipse.m2e
生命周期映射
1.0.0
org.apache.maven.plugins
maven汇编插件
[2.4,)
单一的
org.apache.maven.plugins
maven编译器插件
[3.1,)
测试编译
编译
org.apache.kafka
卡夫卡河
${kafka.version}
首先请参阅以下链接以了解更多信息 引用一句话,它说 当发生以下情况时,将报告此警告消息: 无法将org.slf4j.impl.StaticLoggerBinder类加载到 当找不到合适的SLF4J绑定时,就会发生这种情况 在类路径上。放置一个(且仅一个)slf4j-nop.jar slf4j-simple.jar、slf4j-log4j12.jar、slf4j-jdk14.jar或 类路径上的logback-classic.jar应该可以解决这个问题 作为解决方案的一部分,我建议您使用logback 在maven pom.xml中,添加以下依赖项
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.26</version>
</dependency>
<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<scope>test</scope>
</dependency>
org.slf4j
slf4j api
1.7.26
回写
回归经典
1.2.3
测试
创建logback.xml文件并将其放入项目src/main/resources中
如果您不想使用logback,那么只需将以下依赖项与slf4j api一起添加即可
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-nop -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.26</version>
<scope>test</scope>
</dependency>
org.slf4j
slf4j nop
1.7.26
测试