sbt 安裝以及編譯spark程序

安裝sbt 及配置

0.注意
sbt 我用的是自己用戶, 編譯好後,切換root提交spark,注意權限問題
1. 下載

wget https://dl.bintray.com/sbt/native-packages/sbt/0.13.11/sbt-0.13.11.tgz

2.解壓並設置環境變量

tar -zxvf sbt-0.13.6.tgz -C /data/soft

vim /etc/profile
export PATH=$PATH:/data/soft/sbt/bin

3.sbt的項目結構
這裏寫圖片描述

4.配置build.sbt

name := "lr-model-scala"

version := "1.0"

scalaVersion := "2.10.4"

libraryDependencies += "org.apache.spark" % "spark-core_2.10" % "1.5.2"

5.設置sbt版本
project/build.properties

sbt.version=0.13.11

5.5 運行sbt
在項目目錄下sbt, 等很長時間後可進入交互界面. 之後可以再交互界面run或test直接運行main函數調試.

6.編譯spark項目
使用網上的例子代碼,放入main文件夾的scala文件夾下

import org.apache.spark.{SparkContext, SparkConf}

object SparkMeApp {
  def main(args: Array[String]) {
    val conf = new SparkConf().setAppName("SparkMe Application").setMaster("local")
//    .addjar(List("/data/ctr_workspace/chenlongzhen/lr-on-spark-scala-sbt/target/scala-2.10/"))
    val sc = new SparkContext(conf)
    val fileName = args(0)
    val lines = sc.textFile(args(0)).cache()

    val c = lines.count()
    println(c)
  }
}

7.編譯
在項目根目錄

sbt package
# 第一次編譯時間巨長

8.運行

spark-submit --master "local[*]" --class SparkMeApp ./target/scala-2.10/lr-model-scala_2.10-1.0.jar file:///data

結果

[root@mcapp_yz_017020_dmp lr-on-spark-scala-sbt]# spark-submit --master "local[*]" --class SparkMeApp ./target/scala-2.10/lr-model-scala_2.10-1.0.jar file:///data/ctr_workspace/register-logistic-regression/res/segment/segment_5299_20160303_21
499

參考

https://taoistwar.gitbooks.io/spark-developer-guide/content/spark_base/use_sbt_create_scala_project.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章