1.assembly是SBT的一个plugin在使用之前应先把plugin安装好
在SBT目录的Project下面手动创建一个assembly.sbt的文件,参数为
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")
执行sbt plugins 可查看是否安装成功
2.在利用SBT assembly 打包的时候会遇到jar冲突的问题
在build.sbt添加如下语句,即不打包依赖的jar只把二进制文件进行打包
assemblyExcludedJars in assembly := { val cp = (fullClasspath in assembly).value cp }
-- 制定打包成jar的包名
assemblyJarName in assembly := "test-assembly.jar" -- 指定Scala运行的版本scalaVersion := "2.10.6"
3.在用Idea打包的时候报错
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
执行如下命令:
zip -d sparketl.jar META-INF/*.RSA META-INF/*.DSA META-INF/*.SF
本文介绍如何使用 SBT 的 Assembly 插件来打包 Scala 项目,并解决打包过程中遇到的常见问题,如 jar 冲突等。还提供了解决 IDEA 打包时出现的安全异常错误的方法。
1593

被折叠的 条评论
为什么被折叠?



