14

如何增加 Play 环境的可用内存?运行测试一段时间后,我的内存不足。

特别是,我收到此错误:

java.lang.OutOfMemoryError: PermGen 空间

4

3 回答 3

13

我通过添加解决了这个问题:

javaOptions ++= Seq("-Xmx2048M", "-Xms512M", "-XX:MaxPermSize=2048M")

在 Build.scala 中设置。

于 2013-09-10T17:34:47.053 回答
13

通过设置环境变量“_JAVA_OPTIONS”,可以传入play/sbt在正常使用时会用到的变量。我发现这有助于我在运行开发和测试时避免 PermGen 空间错误。

例如:

导出_JAVA_OPTIONS="-Xms64m -Xmx1024m -Xss2m -XX:MaxPermSize=256m"

于 2013-02-04T20:33:49.357 回答
7

用于播放的 Java 启动选项是脚本中的创建者:

$PLAY_HOME/框架/构建

可以通过修改文件底部的行来增加 PermGen 空间:

java ${DEBUG_PARAM} -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M ...

将 MaxPermSize 变量设置为适当的值。

于 2013-02-01T21:51:31.087 回答