AssemblyKeys用于什么,以及如何导入它们?

jay*_*100 9 scala sbt apache-spark

在最近流行的sbt应用程序https://github.com/databricks/reference-apps中,我发现需要我的一行

import AssemblyKeys._ 
Run Code Online (Sandbox Code Playgroud)

此行不在SBT或我的IntelliJ IDEA中编译.

什么是进口,为什么有必要?

Vib*_*uti 5

使用最新版本,我们不再需要导入 AssemblyKeys._

在此处查看升级指南


Jac*_*ski 2

@mfirry 的另一个答案几乎回答了构建(定义)带来的部分import AssemblyKeys._。这是sbt-assemble插件(引用插件的文档):

\n\n
\n

创建项目的 fat JAR 及其所有依赖项。

\n
\n\n

插件需要它来完成其工作。

\n\n

您可能会问自己为什么我需要这个插件。

\n\n

由于您没有引用需要导入的应用程序以及插件,而且我也没有查看这些示例,所以我只能通过 Databricks 公司猜测该示例是Apache Spark背后的商业实体使用。

\n\n

为了将应用程序部署到 Apache Spark 集群上,您需要组装整个应用程序并配置工作人员,以便他们可以访问二进制文件(具有必要的依赖项,即 jar)。该sbt-assembly插件的目标是打包所有内容并提供一个应用程序 jar 以便 Spark 可以使用。请参阅Apache Spark 文档中的独立应用程序来了解独立案例(无集群环境):

\n\n
\n

为了使 sbt 正常工作,我们需要根据典型的目录结构来布局 SimpleApp.scala 和 simple.sbt。一旦到位,我们就可以创建一个包含 application\xe2\x80\x99s\n 代码的 JAR 包,然后使用 Spark-submit 脚本来运行我们的程序。

\n
\n\n

您可能需要阅读集群模式概述来概述如何将 Spark 应用程序部署到 Spark 集群上。

\n