我正在关注this教程。我的代码就是:
package com.ipponusa;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.streaming.Duration;
import org.apache.spark.streaming.api.java.JavaStreamingContext;
public class SparkStringConsumer {
public static void main(String[] args) {
SparkConf conf = new SparkConf()
.setAppName("kafka-sandbox")
.setMaster("local[*]");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaStreamingContext ssc = new JavaStreamingContext(sc, new Duration(2000));
// TODO: processing pipeline
ssc.start();
ssc.awaitTermination();
}
}
我的Maven依赖项是:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming-kafka_2.10</artifactId>
<version>1.6.0</version>
</dependency>
问题是代码和导入都有错误。我不知道我需要什么依赖项,我不知道如何找出我需要的依赖项。我是Java的新手。
所以我的问题是,我怎么知道我需要什么依赖?
注意:IntelliJ或Netbeans“Find Maven Dependency”功能都没有为我找到任何东西。
编辑:如果我去here我可以找到我正在寻找的类,但我找不到那里的依赖项。
编辑:如果我去here我可以找到很长的依赖列表,但我找不到那些有我需要的类。
提前致谢!
答案 0 :(得分:2)
您可以使用&#39;按类名搜索&#39; search.maven.org的功能,以查找您需要导入的库。
另请注意,maven依赖项是可传递的,即依赖项的依赖项也包含在项目中。
答案 1 :(得分:0)
并非特定于Maven,但是您可以查看Spark source repo,搜索所需的类,然后大致查看其所在的文件夹。
例如,SparkContext
位于core/
文件夹下。
注意:spark-streaming-kafka
依赖于 spark-streaming
,而依赖于 spark-core
,因此,如果您包括该内容,则另存为核心库(例如MLlib,SparkSQL或GraphX),那么也应引入核心。
也许您需要运行mvn compile