gpt4 book ai didi

playframework - 如何通过 Build.scala 将 javaOptions 传递给 "play run"

转载 作者:行者123 更新时间:2023-12-04 08:49:14 24 4
gpt4 key购买 nike

我想通过一个 -Dconfig.file=conf/dev.conf当我使用 run 时,通过 Build.scala 将参数传递给我的应用程序命令。

我想在我的 Build.scala 中加入类似的内容:

val mySettings = Seq(
(javaOptions in run) ++= Seq("-Dconfig.file=conf/dev.conf")
)

val main = play.Project(appName, appVersion, appDependencies).settings(
mySettings: _*
)

但事实并非如此——据我所知,这是因为 SBT 在我使用 run 时不会 fork 新的 JVM。除了设置环境变量之外还有其他解决方法吗?

最佳答案

问题似乎是 Play 在与 SBT JVM 相同的 JVM 中运行,因此未使用 SBT 中设置的 Java 选项。

您可以尝试以下操作:

  • 使用 fork in run := true以便使用您提供的 Java 选项生成新的 JVM
  • 使用 -Dconfig.file=conf/dev.conf 启动 SBT
  • 在同一 JVM 中运行应用程序之前手动设置系统属性:System.setProperty("config.file","conf/dev.conf")

  • 我不确定所有这些解决方案都有效,但值得一试

    关于playframework - 如何通过 Build.scala 将 javaOptions 传递给 "play run",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18281641/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com