1. 環境準備
Eclipse 請不要使用最新的 Neon(4.6) ,太多Bug了。 還是使用最新的 Mars(4.5) 系列吧
JDK 版本8.x (Linux推薦Oracle, 沒有測試過OpenJDK)
因為只是用Java,因此無需安裝Scala及其相應的插件
2. 創建壹個新的maven項目
3. pom.xml
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.10</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.5</version>
</dependency>
這裏只列出了必要的幾個依賴。 其他的請根據妳自己的項目需求添加
4. 使用maven打包
之後在Goal 之中填寫clean package 即可
如果在修改了與Spark相關的代碼之後,需要重新編譯打包才行。 否則會有異常提示。
5. 代碼編寫註意事項:
在創建JavaSparkContext的時候,需要把自己加進去。
public static JavaSparkContextgetContext(String taskName) {
JavaSparkContextsc = new JavaSparkContext(SparkConnUtils.getSparkConf(taskName));
sc.addJar("target/sparkstat-0.0.1-SNAPSHOT.jar");
return sc;
}
其中target/sparkstat-0.0.1-SNAPSHOT.jar是maven 運行之後生成的完整的jar包