SBT assembly打包spark程序:
1.下载SBT ,下载地址:http://www.scala-sbt.org/download.html
2.配置环境变量PATH, ;C:\Program Files (x86)\sbt\bin
3.在C:\Users\当前用户\.sbt\0.13\目录下新建plugins文件夹,在其中创建plugins.sbt,加入以下代码:
resolvers +="bintray-sbt-plugins" at "http://dl.bintray.com/sbt/sbt-plugin-releases"
addSbtPlugin("com.eed3si9n" %"sbt-assembly" % "0.13.0")
或者
在项目project下新建plugins.sbt并加入以上代码. (sbt先加载全局的sbt配置,再加载项目中定义的sbt的配置)
4.打开Git进入要打包的项目:
5.输入 sbt assembly 进行fat-jar打包,如果遇到了deduplicatded错误,是因为存在jar包冲突导致的,可以用sbt的merge方案解决,
不同项目产生的不同的重复问题,此项目中在build.sbt文件中添加如下代码:
assemblyMergeStrategy in assembly := {
case PathList("META-INF", xs@_*) => MergeStrategy.discard
case x => MergeStrategy.first
}
6.完成
如果使用idea的Terminal窗口打包,先打开终端,输入sbt进入sbt shell,输入assembly即可打包。若要重新打包,重新打开Terminal窗口以确保sbt更新配置信息,否则打包执行的还是未修改之前build.sbt的配置信息