【问题标题】:How do I increase Groovy's JVM Heap Size?如何增加 Groovy 的 JVM 堆大小?
【发布时间】:2025-11-29 04:10:02
【问题描述】:

Some sources 在网络上声称我应该能够将 -Xmx 参数提供给 groovy,但这只是在找不到 -Xmx 文件时给了我java.io.FileNotFoundExceptionOther sources 告诉我设置一些名为 JAVA_OPTS 的变量,但我该怎么做呢?我怎么知道它是否有效?

【问题讨论】:

    标签: groovy heap-memory


    【解决方案1】:
    $ export JAVA_OPTS="$JAVA_OPTS -Xmx64M"
    $ groovy
    

    【讨论】:

      【解决方案2】:

      更新:转到您的 Groovy 主文件夹并进入 bin 目录。在 startGroovy.bat 中,您可以将其从 128MB 设置为 512MB,如下所示:

      ...
      @rem set GROOVY_OPTS="-Xmx128m"
      set GROOVY_OPTS="-Xmx512m"
      ...
      

      【讨论】:

        【解决方案3】:

        找到了另一种在 Windows 上执行此操作而无需修改 JAVA_OPTS 等的方法。转到您的 Groovy 主文件夹并进入 bin 目录。如果您通过调用 groovy.bat 文件来调用 Groovy,如果您查看它,您会看到它依次运行 startGroovy.bat。在 startGroovy.bat 中,在脚本的最后几行中,您会发现如下内容:

        @rem Execute Groovy
        "%JAVA_EXE%" %JAVA_OPTS% -classpath "%STARTER_CLASSPATH%" %STARTER_MAIN_CLASS% --main %CLASS% --conf "%STARTER_CONF%" --classpath "%CP%" %CMD_LINE_ARGS%
        

        在 %JAVA_OPTS% 和 -classpath 之前添加您需要分配的 Xmx 开关和内存,这样您就有了这样的内容:

        @rem Execute Groovy
        "%JAVA_EXE%" %JAVA_OPTS% -Xmx256M -classpath "%STARTER_CLASSPATH%" %STARTER_MAIN_CLASS% --main %CLASS% --conf "%STARTER_CONF%" --classpath "%CP%" %CMD_LINE_ARGS%
        

        现在,当您运行 Groovy 时,-Xmx 值将是它使用的分配内存。这种方法的好处是,您无需在每次想要更改堆大小时重新加载 env 变量,并且您可以细粒度地控制 Groovy 正在使用的 JVM 所做的事情。

        【讨论】:

          最近更新 更多