Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用java向卡夫卡主题发送消息_Python_Eclipse_Apache Kafka_Kafka Producer Api - Fatal编程技术网

Python 使用java向卡夫卡主题发送消息

Python 使用java向卡夫卡主题发送消息,python,eclipse,apache-kafka,kafka-producer-api,Python,Eclipse,Apache Kafka,Kafka Producer Api,在这里和谷歌搜索了几个星期后,我决定把它贴在这里,看看是否有人有同样的问题可以帮我一把 我有一个用EclipseGanymede开发的java应用程序,它使用tomcat连接本地数据库。问题是我想向公共服务器上发布的卡夫卡主题发送一条简单的消息(“Hello World”)。我已经导入了库并开发了Kafka函数,但是在调试模式下运行时会发生一些事情。编译时我没有问题或可见错误,但当我运行应用程序并按下按钮启动此函数时,它会在KafkaProducer函数中停止,因为没有ClassDefFound

在这里和谷歌搜索了几个星期后,我决定把它贴在这里,看看是否有人有同样的问题可以帮我一把

我有一个用EclipseGanymede开发的java应用程序,它使用tomcat连接本地数据库。问题是我想向公共服务器上发布的卡夫卡主题发送一条简单的消息(“Hello World”)。我已经导入了库并开发了Kafka函数,但是在调试模式下运行时会发生一些事情。编译时我没有问题或可见错误,但当我运行应用程序并按下按钮启动此函数时,它会在KafkaProducer函数中停止,因为没有ClassDefFoundError kafka.producer。。。。。看起来它没有正确地找到库,但我已经看到它在正确导入的构建路径中

我不确定问题是否出在Kafka以及与Eclipse或JavaSDK(3.6)的兼容性上,可能是?。有人知道卡夫卡所需的Java最低版本吗

另外,我发现Kafka实际上是使用Scala的,但我想知道我是否可以使用这个EclipseIDE版本来不改变这一点

我发现的另一个解决方案是使用一个从Java应用程序调用的Python脚本,但是我没有办法从那里调用它,因为我遵循了几个教程,但是没有任何效果,但是我必须继续这样做,因为这似乎是一个更容易的选择。我已经开发了.py脚本并使用Kafka服务器,现在我必须找到从Java和Python交换变量的解决方案。如果有人知道这方面的好教程,请告诉我


在我写了这几天的简历之后,在我的头撞到墙上之后,也许有人以前发现了这个错误,可以帮助我找到解决办法,我真的很感激,也为漫长的历史感到抱歉。

请将Kafka客户端库包含在您正在部署到Tomcat的Java应用程序的WAR文件中

请使用org.apache.Kafka.clients.producer.KafkaProducer,而不是Kafka.producer.producer(旧的客户端API)并确保类路径上有Kafka客户端库。客户端库完全使用Java。它是用scala编写的旧API,服务器端代码也是如此。如果使用新的客户端API,则无需在代码中导入服务器库或将其添加到类路径。

最后,问题与未正确添加的库有关。我必须将它添加到build.xml文件中,在这里导入库。也许这对使用旧Eclipse版本的人很有用。
所以现在它找到了库,但我必须更新Java版本,还有其他事情。所以问题就解决了

卡夫卡的所有依赖项都是通过Maven(或者手动)这样的东西包含的吗?我是从项目属性手动添加的