当前位置: 首页 > 面试题库 >

如何通过环境变量设置Java的最小和最大堆大小?

商麒
2023-03-14
问题内容

如何通过环境变量设置Java的最小和最大堆大小?

我知道可以在启动Java时设置堆大小,但是我希望通过服务器上的环境变量对此进行调整。


问题答案:

您不能直接使用环境变量来做到这一点。您需要使用传递给java命令的“非标准”选项集。运行:java -X了解详细信息。您要查找的选项是-Xmx和-
Xms(这是“初始”堆大小,因此可能是您要查找的内容。)

诸如Ant或Tomcat之类的某些产品可能附带一个批处理脚本,该脚本查找JAVA_OPTS环境变量,但它不是Java运行时的一部分。如果您使用的是其中一种产品,则可以像下面这样设置变量:

set JAVA_OPTS="-Xms128m -Xmx256m"

您也可以在自己的命令行中采用这种方法,例如:

set JAVA_OPTS="-Xms128m -Xmx256m"  
java ${JAVA_OPTS} MyClass


 类似资料:
  • 问题内容: 在Linux上的环境变量中可以存储的数据量是否有限制,如果可以,它是什么? 对于Windows,我发现以下KB文章总结为:Windows XP或更高版本:8191个字符Windows 2000 / NT 4.0:2047个字符 问题答案: 我认为Linux上没有针对每个环境的变量限制。所有环境变量的总大小在execve()时受到限制。有关更多信息,请参见此处的“参数和环境大小的限制”

  • 问题内容: 如何从Java程序中获取VM的最小和最大堆大小设置? 问题答案: 最大堆大小: 您可能会发现一些有趣的其他计算:

  • 问题内容: 当前,在我们的测试环境中,最大和最小JVM堆大小设置为相同的值,基本上与专用服务器计算机为我们的应用程序所允许的大小相同。这是性能最佳的配置,还是给JVM一个更好的范围? 问题答案: 设置- Xms的主要原因是,如果您在启动时需要一定的堆。(防止OutOfMemoryErrors在启动时发生。)如上所述,如果您需要启动堆来匹配最大堆,则是匹配它的最大时间。否则,您将不需要它。只是要求应

  • 我是Java的初学者,刚开始使用Intellij作为我的IDE。 当我使用它时,有时会延迟。 我更改了我的 xms 和 xmx 以获得更大的堆大小(xms = 1024,xmx = 2048),但它抛出了一个错误。 所以,我把它回滚了。 错误消息是这样的:“初始堆大小设置为大于最大堆大小的值”。 有什么问题? 如果可能,如何增加最大堆大小? 我用的是笔记本电脑,它有8GB内存。x64Intelli

  • 问题内容: 有没有一种方法可以通过编程而不是作为vm参数来设置最大Java堆大小? 就像是: 问题答案: 不适用于任何Hotspot JVM。只能在命令行上指定JVM堆参数,然后在JVM的生存期内对其进行固定。 使用Hotspot Java实现,“更改”应用程序堆大小的唯一方法是使用不同的命令行参数在新的JVM中重新启动它。 (我隐约记得,其他一些供应商的JVM 确实 允许在运行的JVM中更改某些

  • 我正在使用IntelliJ 2020.1 Ultimate,并且有一个JBoss 7.0.2服务器,我想从IntelliJ运行。 我将其添加为配置: 但是当我尝试启动服务器时,我收到以下错误: IDEA.app/Contents/plugins/Kotlin/lib/jps/kotlin-jps-plugin.jar:/Applications/IntelliJ IDEA.app/Contents