请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

执行报错

执行KafkaClientApp 类时报错
图片描述
错误定位的37,21是这一行:

	producer.send(new KeyedMessage<Integer, String>(topic, message));

正在回答

2回答

你的produce代码贴下看看

0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕哥1181079 #1
    PK哥 produce代码我贴到回复里了
    回复 有任何疑惑可以回复我~ 2019-11-18 18:07:41
提问者 weixin_慕哥1181079 2019-11-18 18:07:16
package com.imooc.spark.kafka;

import kafka.javaapi.producer.Producer;
import kafka.producer.KeyedMessage;
import kafka.producer.ProducerConfig;

import java.util.Properties;

/**
 * Kafka 生产者
 */
public class KafkaProducer extends Thread {

    private String topic;

    private Producer<Integer, String> producer;

    public KafkaProducer(String topic) {
        this.topic = topic;

        Properties properties = new Properties();

        properties.put("metadata.broker.list",KafkaProperties.BROKER_LIST);
        properties.put("serializer.class","kafka.serializer.StringEncoder");
        properties.put("request.required.acks","1");

        producer = new Producer<Integer, String>(new ProducerConfig(properties));
    }

    @Override
    public void run() {

        int messageNo = 1;

        while(true) {
            String message = "message_" + messageNo;
            producer.send(new KeyedMessage<Integer, String>(topic, message));
            System.out.println("Sent: " + message);

            messageNo ++ ;

            try{
                Thread.sleep(2000);
            } catch (Exception e){
                e.printStackTrace();
            }
        }
    }
}


0 回复 有任何疑惑可以回复我~
  • 报错的那行是那一句?
    回复 有任何疑惑可以回复我~ 2019-11-18 18:12:25
  • 提问者 weixin_慕哥1181079 回复 Michael_PK #2
    producer.send(new KeyedMessage<Integer, String>(topic, message)); 是这一句
    回复 有任何疑惑可以回复我~ 2019-11-18 20:24:24
  • Michael_PK 回复 提问者 weixin_慕哥1181079 #3
    1)看你的控制台信息 你的jdk编译怎么是1.5的? idea里面改下  2)你的工程里的pom的所有东西都正常导入没,包括scala
    回复 有任何疑惑可以回复我~ 2019-11-18 21:45:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信