【问题标题】:sbt-native-packager defining multiple mainClasses in different modulessbt-native-packager 在不同的模块中定义多个 mainClasses
【发布时间】:2019-03-14 01:09:09
【问题描述】:

我想打包多个 docker 镜像,每个镜像都有自己的 mainClass,以确保应用在启动时运行。

lazy val `core` = project.in(file("core"))
  .enablePlugins(JavaServerAppPackaging, DockerPlugin)
  .settings{
    mainClass in Compile := Some("path/to/Core") // Doesn't work
  }

lazy val `benchmark` = project.in(file("benchmark"))
  .enablePlugins(JavaServerAppPackaging, DockerPlugin)
  .settings{
    mainClass in Compile := Some("path/to/Benchmark") // Doesn't work
  }

这不起作用,因为在 stage 步骤中找不到 mainClasses。

当我将 mainClass 定义为全局参数时,它可以工作,但我无法以这种方式构建两个自动运行的 Docker 映像。

感谢您的帮助

【问题讨论】:

    标签: scala sbt sbt-native-packager


    【解决方案1】:

    我对@9​​87654321@ 没有经验,但mainClass 是类路径而不是文件路径,所以它必须定义为:

    mainClass in (Compile, packageBin) := Some("com.bar.baz.Foo")
    

    【讨论】:

      猜你喜欢
      • 2015-06-26
      • 2016-10-21
      • 2016-07-27
      • 2014-06-20
      • 2016-10-12
      • 2020-02-12
      • 2015-04-18
      • 2015-10-03
      • 2018-10-30
      相关资源
      最近更新 更多