sbt插件安装及使用

https://my.oschina.net/u/915967/blog/146746
1.下载
http://www.scala-sbt.org/download.html
2.解压
tar zxvf sbt-0.13.11.tgz
3.建立启动sbt脚本文件

$ cd ./sbt
$ vim sbt
# 在sbt文本文件中添加如下信息:
BT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar /home/zhangchengfei/Tools/sbt/bin/sbt-launch.jar "$@" 

4.修改sbt文件权限
$ chmod u+x sbt

5.配置PATH环境变量
$ vim ~/.bashrc# 在文件尾部添加如下代码后,保存退出export PATH=/home/zhangchengfei/Tools/sbt/:$PATH
$ source ~/.bashrc

6.sbt设置
配置文件的目录在./sbt/conf/sbtconfig.txt
设置网络代理,在配置中添加:

-Dhttp.proxyHost=proxy.zte.com.cn
-Dhttp.proxyPort=80

安装完成后会在用户的根目录生成两个文件夹,sbt工作文件夹.sbt和lvy缓存目录.ivy2,修改默认路径,在配置中添加:

-Dsbt.global.base=/home/zhangchengfei/Tools/sbt/.sbt
-Dsbt.ivy.home=/home/zhangchengfei/Toos/sbt/.ivy2

7.测试是否成功

$ sbt sbt-version
[info] Set current project to sbt (in build file:/opt/scala/sbt/)[info] 0.13.9

使用方法

1.创建sbt项目

(1)mkdir sbttest
(2)创建文件build.dbt

name := "sbttest"
version := "1.0"
scalaVersion := "2.11.8"

(3)创建project文件夹,并进入
(4)新建build.properties文件

sbt.version = 0.13.8

(5)在命令行输入sbt即可生成dbt项目

2.创建eclipse 项目

(1)在~/.sbt/0.13/plugins目录下创建sbteclipse.sbt
添加内容为

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "3.0.0") 

(2)在项目目录下执行sbt,或者reload,则会自动更新
(3)直接导入eclipse项目即可
注意
这种方式是全局配置,每一个sbt项目都会自动加载sbteclipse插件如果不想这样,可以在项目project文件夹中的plugins.sbt
添加

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "3.0.0") 

编译和打包

1.直接打包

cd ~/spark_wordcount/
./sbt compile
./sbt package

在\target\scala-2.11目录下有jar包

2.用assembly打包

1.首先在 project/plugins.sbt: 下加入这段代码:

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.11.2")`

2.先对project 执行sbt 看看能不能通过 记住要在机子上装好Git
3.在根目录创建assembly.sbt文件,内容如下:

import AssemblyKeys._ // put this at the top of the fileassemblySettings// your assembly settings here

之后就可以sbt assembly
来打包了,生成./target/scala_x.x.x/projectname-assembly-x.x.x.jar
4.如果想更详细的配置assembly,可以这样

Paste_Image.png

实际应用。好多还没弄明白

在build.sbt中如下,需要设置排除的文件等

import AssemblyKeys._

name := "sparkmlib"

version := "1.0"

scalaVersion := "2.10.0"


libraryDependencies += "org.jblas" % "jblas" % "1.2.3"

libraryDependencies += "org.scala-lang" % "scala-library" % "2.10.0" % "provided"

mergeStrategy in assembly := {
  case PathList(ps @ _*) if ps.last endsWith ".properties" => MergeStrategy.first
  case PathList("scala", xs @ _*) => MergeStrategy.first
  case x =>
    val oldStrategy = (mergeStrategy in assembly).value
    oldStrategy(x)
}

在plugin.sbt中如下

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.11.2")

2.不用sbt,倒是挺方便的

file -->project structure -->

Paste_Image.png

遇到的问题,java内存溢出,在sbtconfig.txt文件中增加

-Xms64m
-Xmx500m
-Xss2m
-XX:PermSize=100M
-XX:MaxNewSize=200m
-XX:MaxPermSize=400m

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,898评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,401评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,058评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,539评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,382评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,319评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,706评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,370评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,664评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,715评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,476评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,326评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,730评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,003评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,275评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,683评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,877评论 2 335

推荐阅读更多精彩内容