簡體   English   中英

無法使用KafkaUtils:Spark 1.6.0創建Java輸入dstream。

[英]Unable to create Java input dstreams using KafkaUtils :Spark 1.6.0

我正在使用帶有Kafka的Spark 1.6.0和工件spark-streaming_2.11 API來消耗字符串消息。

根據文檔,我試圖使用Kafka utils創建直接流,但出現以下編譯器錯誤:

KafkaUtils類型的方法createDirectStream(JavaStreamingContext,Class,Class,Class,Class,Class,Map,Set)不適用於參數(JavaStreamingContext,Class,Class,Class,Class,Map,Set)

這是我寫的代碼片段:

conf = new SparkConf().setAppName("Test Streaming App").setMaster("local[*]");
sc = new JavaSparkContext(conf);
ssc = new JavaStreamingContext(sc, new Duration(2000));
Map<String, String> kafkaParams = new HashMap<String, String>();
kafkaParams.put("metadata.broker.list", "localhost:9092");
Set<String> topics = Collections.singleton("test");
JavaPairInputDStream<String, String> dstream = KafkaUtils.createDirectStream(ssc, String.class, String.class, StringDecoder.class, StringDecoder.class,kafkaParams,topics);
ssc.start();
ssc.awaitTermination();

我正在使用的工件和版本是否與此有關? 請對此加以說明。

問題出在StringDecoder類上,該類似乎不可訪問。

按照下面的帖子

無法訪問kafka.serializer.StringDecoder

我已按照接受的答案執行了上述步驟,並解決了該問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM