![](/img/trans.png)
[英]Unable to create a fat jar for multi module project using sbt-assembly
[英]How to create fat jar using sbt
我是新手来激发编程。 我想创建包含所有依赖项jar的胖子jar。 当前我正在使用以下命令运行spark应用程序
./spark-submit -class XYZ --jars dependency_1,dependency_2 main.jar
但是我不想每次都通过这些依赖罐。 我用谷歌搜索,但找不到有效的解决方案。
我尝试的方法之一是使用程序集插件。 但是它给出了以下错误。
[error] Not a valid command: assembly
[error] Not a valid project ID: assembly
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: assembly
[error] assembly
[error]
因此,请任何人都知道这是制造胖子罐的最佳方法。
提前致谢。
编辑1-
我的build.sbt-
import AssemblyKeys._
assemblySettings
name := "Update Sim Count"
version := "1.0"
scalaVersion := "2.10.0"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.0"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "1.6.0"
libraryDependencies += "com.datastax.spark" %% "spark-cassandra-connector" % "1.5.0-RC1"
libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.12"
assembly.sbt:
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")
编辑2-
@Chobeat给出的答案有效。 跟随那个博客。 无需该博客的build.scala。 您只能添加assembly.sbt和几行到build.sbt。 那对你有用。 感谢@Chobeat的帮助。
请记住将sbt程序集插件添加到您的项目中。 这不是默认命令。
首先用Spark构建一个胖罐子有点棘手,但这不是黑魔法。 这也是实现您想要做的正确方法。
遵循教程,您会变得很好:
http://blog.prabeeshk.com/blog/2014/04/08/creating-uber-jar-for-spark-project-using-sbt-assembly/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.