warning: ignoring option PermSize=512m; support was removed in 8.0

warning: ignoring option PermSize=512m; support was removed in 8.0解决


分类专栏: JAVA基础——基础决定高度

问题出现场景
使用jdk1.8的时候设置了vm参数:-Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=768m -Xss2m
此时运行java程序时VM提示如下警告:

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=512m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=768m; support was removed in 8.0

解决思路
查阅网上资料:

http://www.coderhelper.top/doc/technotes/tools/windows/java.html#BABDCEGG

得知-XX:PermSize和-XX:MaxPermSize在jdk1.8中被弃用了,使用-XX:MetaspaceSize和-XX:MaxMetaspaceSize替代。
所以此时VM参数正确应为:-Xmx2048m -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=768m -Xss2m

思考
在jdk1.8之前之前我们将储存类信息、常量、静态变量的方法区称为持久代(Permanent Generation),PermSize和MaxPermSize是设置持久代大小的参数,在jdk1.8中持久代被完全移除了,所以这两个参数也被移除了,多了一个元数据区(Metadata Space),所以设置元数据区大小的参数也变成对应的MetaspaceSize和MaxMetaspaceSize了。

版权声明
原文地址为:http://blog.csdn.net/qq525099302/article/details/78396120,转载请注明出处。

展阅读

扩展阅读:http://ifeve.com/java-permgen-removed/ (Java PermGen 去哪里了?)

猜你喜欢

转载自blog.csdn.net/baidu_41617231/article/details/107318071