【发布时间】:2023-03-22 21:26:01
【问题描述】:
我的目录结构是这样设置的。
src/main/scala/main/Main.scala
src/main/scala/scripts/MainScript.scala
脚本是一个正在运行的后台作业。
我之前使用sbt-assembly 将主文件打包到要部署的jar 中,但我不确定如何使用sbt-assembly 或sbt-native-packager 创建两个单独的jar。我该怎么做?解决这个问题的最佳方法是什么?
我想做类似的事情。
java -jar main.jar $PORT
java -jar scriptMain.jar
【问题讨论】:
-
Sbt 原生打包器为您创建可部署的工件。您可以串联使用 Sbt 程序集和 Sbt 本机打包程序。我们为 spark 创建 rpm 包,使用 Sbt 程序集创建的 fat jar。
-
@Manas 是否可以在
build.sbt中使用sbt-assembly编写解决方案以同时创建两个单独的JAR?我以前用它来创建一个 JAR。因为一旦有了这些,我就可以创建另一个文件来执行上述代码块中发生的事情。 -
@Manas 我应该创建一个多项目构建吗?所以我会在
common中有公共代码,在script中有MainScript,在main中有Main。并以这种方式构建 JAR? -
不确定多项目构建将如何帮助您。我仍然会使用
sbt-assembly并使用两个脚本。一个打电话给main,另一个打电话给script。基本上,您最终会将相同的 jar 复制到两个包中。
标签: scala sbt-assembly sbt-native-packager