我正在使用SBT作为Spark项目的构建工具。我可以使用sbt-assembly
插件为依赖项创建一个胖子。
但是,这产生了一个约120M的jar,大部分依赖关系我需要不断上传到S3才能运行我的代码-这需要3-5分钟。时间不多,但很烦人。
让SBT产生一罐依赖关系(很少更改)和一小罐我的应用程序代码(可以在几秒钟内上传)会大大改善。
这可能吗?我对SBT很陌生。
答案 0 :(得分:2)
sbt-assembly
支持开箱即用的splitting project application jar from dependency jar。要仅生成依赖项jar,请执行
sbt assemblyPackageDependency
要仅使用您的项目应用程序代码来生产jar,请按照以下说明定义assemblyOption
assemblyOption in assembly := (assemblyOption in assembly).value.copy(includeScala = false, includeDependency = false)
并照常执行sbt assembly
。