阶段和tarball的不同映射

时间:2016-06-16 19:52:56

标签: sbt sbt-native-packager

我想为我的舞台应用程序和我用来分发我的应用程序的tarball生成不同的日志配置

我有一个生成配置的任务,并希望在stage和packageZipTar上使用不同的参数调用它。这是我的配置

    mappings in Universal in stage += {
      val f = generateLoggingConfigTask(LogType.ConsoleAndFiles).value
      f -> ("conf/" + f.getName)
    },

    mappings in Universal in packageZipTarball += {
      val f = generateLoggingConfigTask(LogType.Files).value
      f -> ("conf/" + f.getName)
    },

第一个任务仅在进行阶段时触发,但是在packageZipTarball上我运行了两个任务,而且它们以不可预测的顺序运行,所以有时我有一个配置有时另一个

有关如何进行的任何提示?

1 个答案:

答案 0 :(得分:0)

问题是packageZipTarball取决于stage,这就是native-packager的工作方式。 stage始终创建一个“准备构建”目录,打包格式用于创建程序包。分散这两者,会使本机包装行为变得混乱和不一致。

我会推荐以下选项之一 1.使用stage创建您的应用,并使用cli参数显式传递配置 2.创建一个bash脚本,显式添加日志记录配置参数,然后调用它来启动应用程序