解决idea启动项目偶尔出现OutOfMemery内存溢出问题,java.lang.OutOfMemoryError: PermGen space

idea启动项目报内存溢出问题java.lang.OutOfMemoryError: PermGen space

异常信息

八月 03, 2020 11:39:13 下午 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [spring] in context with path [] threw exception [Handler processing failed; nested exception is java.lang.OutOfMemoryError: PermGen space] with root cause
java.lang.OutOfMemoryError: PermGen space
	at sun.misc.Unsafe.defineClass(Native Method)
	at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
	at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:399)
	at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:396)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:395)
	at sun.reflect.MethodAccessorGenerator.generateSerializationConstructor(MethodAccessorGenerator.java:113)
	at sun.reflect.ReflectionFactory.newConstructorForSerialization(ReflectionFactory.java:331)
	at java.io.ObjectStreamClass.getSerializableConstructor(ObjectStreamClass.java:1356)
	at java.io.ObjectStreamClass.access$1500(ObjectStreamClass.java:69)
	at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:480)
	at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:455)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:455)
	at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:352)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1130)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
	at java.util.ArrayList.writeObject(ArrayList.java:710)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
	at java.util.HashMap.writeObject(HashMap.java:1100)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)

解决办法:

Step 1

在这里插入图片描述

Step 2 加一条配置

JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,address=127.0.0.1:60170,suspend=y,server=n -server -XX:PermSize=512M -XX:MaxPermSize=512m

注意XX:PermSize=512M -XX:MaxPermSize=512m,如果添加之后服务器启动失败报内存问题,可以适当修改大小
在这里插入图片描述
如果出现增加无法启动问题,把端口改成和上面配置的端口相同 即可。
如果出现VM Options的配置失效,则把该配置复制到value值的最后面,比如:

JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,address=127.0.0.1:60170,suspend=y,server=n -server -XX:PermSize=512M -XX:MaxPermSize=512m -Dfile.encoding=UTF-8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值