在“sbt-native-packager”脚本中使用除“sbt run”之外的其他 sbt 命令。例如:“sbt flywayMigrate”

Posted

技术标签:

【中文标题】在“sbt-native-packager”脚本中使用除“sbt run”之外的其他 sbt 命令。例如:“sbt flywayMigrate”【英文标题】:Use other sbt commands than "sbt run" in the "sbt-native-packager" script. For example: "sbt flywayMigrate" 【发布时间】:2016-09-09 08:52:48 【问题描述】:

我目前正在尝试使用“sbt-native-packager”和“universal”插件打包一个包含“Flyway”的项目。问题是,打包项目的脚本只使用了 SBT 的“sbt run”命令。但我需要它从“Flyway”上运行“sbt flywayMigrate”或“sbt flywayClean”等命令。

有没有办法做到这一点?也许自定义“运行”命令或在脚本中添加其他命令?

非常感谢!

【问题讨论】:

【参考方案1】:

Native-packager 不使用“sbt run”,而是创建一个可运行的发行版。但是,如果您有多个主类,则可以覆盖 mainClass in Compile

mainClass in Compile := Some("com.example. MyMain")

您可以以编程方式运行 flyway。如果您正在使用播放,还有一个播放插件。

【讨论】:

非常感谢,我会以编程方式尝试!

以上是关于在“sbt-native-packager”脚本中使用除“sbt run”之外的其他 sbt 命令。例如:“sbt flywayMigrate”的主要内容,如果未能解决你的问题,请参考以下文章

在 sbt-native-packager 中配置“动态”命令行参数

新贵的 daemonUser 在 sbt-native-packager 中不起作用

为啥 sbt-native-packager 不生成 bin 目录?

如何在具有多个电源的单个模块项目中设置 sbt-native-packager

将 sbt-web 资源 jar 添加到 sbt-native-packager 的类路径

如何为 appJS/appJVM 交叉构建项目运行 scala sbt-native-packager