何时使用“sbt 程序集”和“sbt 编译 && sbt 包”?

2023-12-03

我想知道我什么时候应该使用sbt assembly什么时候sbt compile && sbt package?

我正在使用 Intellij IDEA 在本地计算机上编写一个程序,并使用以下命令进行编译sbt compile && sbt package,然后我将把它上传到集群并使用运行它spark-submit。这是最好的方法吗?我应该什么时候使用sbt assembly?


我想知道我什么时候应该使用sbt assembly什么时候sbt compile && sbt package?

Quoting sbt组装的网站(给出sbt assembly):

目标很简单:创建项目的 fat JAR 及其所有依赖项。

任何依赖build.sbt(未标记为Provided)将成为最终 jar 文件的一部分,称为 uber-jar。

您想要使用该插件至少有两个原因:

  1. 将所有依赖项捆绑在一个 jar 文件中,这样更容易部署到生产环境(类似于 Docker 映像)
  2. 使用一个 Spark 版本(例如 2.0.0)和一个具有以下功能的集群来运行您的应用程序:spark-submit从 Spark 1.6.0 开始

You use sbt compile && sbt package编译并打包应用程序的类(顺便说一句,不必使用 Spark)。该 jar 文件不包含应用程序的依赖项,因此必须以其他方式提供任何依赖项(并且使部署有点复杂)。

NB: sbt compile && sbt package只是一个更长的变体sbt compile package鉴于此compile任务是一个依赖项package只是sbt package.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

何时使用“sbt 程序集”和“sbt 编译 && sbt 包”? 的相关文章

随机推荐

  • Eclipse 插件中标记的悬停文本

    我有一个带有问题标记的自定义编辑器 标记在 问题 视图中正确显示 包含图标 位置和文本 并且问题图标在编辑器的左边距中正确显示 我希望将鼠标悬停在边距中的问题标记图标上时在弹出窗口中显示相同的错误消息文本 就像在 Java 编辑器中一样 现
  • LINQ查询问题

    无法在 Feed 中获得任何结果 feedXML 具有正确的数据 XDocument feedXML XDocument Load http search twitter com search atom q twitter var feed
  • 使用 .addOnSuccessListener 返回私有方法的值

    再会 有什么方法可以实现这个吗 val db Firebase firestore val userID Firebase auth currentUser uid val infoRef db collection user docume
  • 如何在 Mongo 中查询“is not null”?

    我想执行以下查询 db mycollection find HAS IMAGE URL 正确的语法应该是什么 这将返回带有名为 IMAGE URL 键的所有文档 但它们可能仍然具有空值 db mycollection find IMAGE
  • BlueZ 兼容内核版本

    我在 Linux 中使用内核版本 3 0 35 和 bluez 4 98 这样我就可以按照 SO 问题之一中给出的 hcitool 命令来宣传 ibeacon 我还能够连接到其他 ble 设备 但无法使用 gatttool 中的 主要 列出
  • 在javascript中将数字转换为日期格式yyyymmdd到mm/dd/yyyy

    我正在获取 XML 提要并使用 JavaScript 将其写入 HTML 日期字段有 20120319 我想做的是将其转换为更易读的格式 例如 03 19 2012 在 JavaScript 中是否有一种简单的方法可以做到这一点 一种方法是
  • Spark:将 2 元组键 RDD 与单键 RDD 连接的最佳策略是什么?

    我有两个想要加入的 RDD 它们看起来像这样 val rdd1 RDD T U val rdd2 RDD T W V 碰巧的是 关键值rdd1是唯一的 并且元组键值rdd2是独一无二的 我想加入这两个数据集 以便得到以下 rdd val r
  • adb 无法将 .apk 文件复制到 Android 模拟器:没有这样的文件或目录

    我在让 MyFirstApp Hello World Android 应用程序在模拟器中运行时遇到了障碍 我正在按照以下网址的说明进行操作 http developer android com training basics firstap
  • 从 XSL 调用 Java (SAXON)

    我正在尝试使用 java 中的 Saxon 处理器 我正在使用saxon9ee jar里面 saxonee9 3 0 11j zip 刚刚下载 没有许可证 是否需要它才能工作 Their 可以在这里找到资源 http www saxonic
  • Swift - 圆角半径和投影问题

    我正在尝试创建一个按钮圆角 and a 阴影 无论我如何切换 该按钮都无法正确显示 我试过了masksToBounds false and masksToBounds true 但是要么圆角半径起作用而阴影不起作用 要么阴影起作用而圆角半径
  • @ManagedBean @Component 类中的 @Autowired 服务在 JSF 请求期间为 null [重复]

    这个问题在这里已经有答案了 我尝试过将 Spring 3 MVC 与 JSF 2 结合起来 我在 Spring 和 JSF 方面有一些经验 但之前从未尝试过加入它们 最后我有2个文件 ManagedBean name userBean Sc
  • CUDA C++11,lambda 数组,按索引的函数,不起作用

    我在尝试让 CUDA 程序按索引管理 lambda 数组时遇到问题 重现问题的示例代码 include
  • responseText 有效,但 responseXML 始终为 null

    我已经浏览了这里可以找到的所有答案 但无法解决这个问题 我很确定我没有错过任何明显的事情 我正在尝试加载基于经纬度的地图标记 问题是 当我尝试返回 AJAX 响应时 responseXML 始终为 null 如果我使用responseTex
  • 如何使用 Facebook GRAPH API 删除 Facebook 评论帖子?

    我开始研究这个是因为我希望能够删除 Facebook 活动墙上的评论 因为 删除帖子 似乎不适用于活动墙上的评论 然而 由于我不知道是否有可能 我决定看看是否可以手动删除我在自己的墙上发布的帖子 因为这是可能的 注意我是NOT使用任何 SD
  • Intent.getExtras() 总是返回 null

    我正在尝试通过通知和事件运行活动onCreate我想 重定向 为此添加对信息的思考Intent班级 一个重要的特性是生成通知的类是通过服务执行的 我从中检索上下文getApplicationContext类提供的方法android app
  • 在文件名前批量添加字符串

    我正在处理 Windows 批处理文件 需要更改当前目录中的文件名 我有这些文件 file1 txt file2 txt file3 txt 我需要在每个文件名之前添加字符串 REG 如下所示 REG file1 txt REG file2
  • VBA控制功能区?

    我正在为 Excel 2010 创建 VBA 加载项 我使用了 Microsoft Office 的自定义 UI 编辑器 创建我自己的功能区的工具 但是 我想为用户提供加载我的加载项的选项 而不显示功能区 或者显示功能区的不同部分 通过菜单
  • tf_agents 自定义 time_step_spec

    我正在修改 tf agents 但在定制时遇到问题time step spec 我正在尝试在健身房 Breakout v0 中训练 tf agent 我已经制作了一个函数来预处理观察结果 游戏像素 现在我想修改 time step 和 ti
  • Silverlight Web 服务调用在 Studio 中可以工作,但从网站运行时失败

    我们正在构建一个 Silverlight 应用程序并调用 Silverlight WCF 服务 从 Visual Studio 运行应用程序时 一切正常 当我们部署到网站并运行应用程序时 每次调用 Web 服务时 我们都会收到以下错误 或类
  • 何时使用“sbt 程序集”和“sbt 编译 && sbt 包”?

    我想知道我什么时候应该使用sbt assembly什么时候sbt compile sbt package 我正在使用 Intellij IDEA 在本地计算机上编写一个程序 并使用以下命令进行编译sbt compile sbt packag