似乎无法在 SBT 内的分叉 JVM 中运行 Play 应用程序

Fun*_*rog 5 scala sbt playframework

我有一个使用SBT (v1.5.5) 构建的Scala Play Framework Web 应用程序(使用Scala v2.13.7 和Play v2.8.8)。

我的build.sbt包括以下内容:

lazy val root = (project in file("."))
.enablePlugins(PlayScala)
.settings(

  // etc.

  fork := true,
  javaOptions ++= Seq(
    "-Xms1G",
    "-Xmx8G",
  ),
)
Run Code Online (Sandbox Code Playgroud)

但是,当我执行 时,不会为 Web 应用程序生成单独的 JVM sbt run,并且内存设置是 SBT JVM 的内存设置(-Xms1024m-Xmx1024m)。

PlayScala插件在运行 Web 应用程序本身时是否会干扰或禁用分叉?我可以强制 Web 应用程序使用SBT中的分叉 JVM 吗?

Har*_*eem 0

根据 sbt 文档Forked JVM Options,您可能想要执行以下操作:

lazy val root = (project in file("."))
.enablePlugins(PlayScala)
.settings(

  // etc.

  javaOptions ++= Seq(
    "-Xms1G",
    "-Xmx8G",
  ),
  fork := true,
  run / javaOptions += "-Xms1G -Xmx8G",
)
Run Code Online (Sandbox Code Playgroud)

我对游戏不太熟悉,但这应该可以解决您面临的问题。