Windows 设置 Tomcat 的 JVM 内存大小

81 阅读1分钟

最近在运维公司老项目时,启动Tomcat出现了java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError错误,这个错误是JVM 内存溢出,导致这个错误的原因是程序在申请内存时,没有足够大的内存供这个程序使用,就出现这个错误了,需要给程序设置大一些的JVM 堆内存。

因为我们这个项目是通过Tomcat启动的,跟执行JAR包方式不同,需要去Tomcat包下设置。

先找到Tomcatbin路径下的catalina.bat文件

在这里插入图片描述

编辑catalina.bat文件,在第二行设置JVM 堆内存大小

set JAVA_OPTS=-server -Xms512m -Xmx1024m -XX:PermSize=512M -XX:MaxPermSize=1024M

-Xms代表分配给JVM 堆初始内存的最小值 -Xmx代表分配给JVM 堆初始内存的最大值 -XX:PermSize代表分配给非堆区初始内存最小值 -XX:MaxPermSize代表分配给非堆区初始内存最大值

在分配给JVM内存时一定要根据自己的项目情况而定,每个项目所需的内存大小都是不一样的,还要注意的是分配的JVM 堆初始内存最大值和非堆区初始内存最大值不能超过操作系统的可用内存

在这里插入图片描述