1. 錯誤提出
1.今天在跑Oracle查詢時,控制檯窗口輸出瞭如下的信息:
java.lang.OutOfMemoryError: PermGen space
2. 解決方案
由於 JDK 自帶的虛擬機爲 HotSpot,且其支持內存區域的動態擴展,因此可以通過設置虛擬機參數來擴展方法區的內存大小。例如,進入Run/Debug Configuration頁面,修改虛擬機參數爲:
-Xms1024M -Xmx2048M -XX:PermSize=128M -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError
其中,各個參數的含義爲:
-Xms,表示程序啓動時,JVM 堆的初始化最小尺寸參數;
-Xmx,表示程序啓動時,JVM 堆的初始化最大尺寸參數;
-XX:PermSize,表示程序啓動時,JVM 方法區的初始化最小尺寸參數;
-XX:MaxPermSize,表示程序啓動時,JVM 方法區的初始化最大尺寸參數。
-XX:+HeapDumpOnOutOfMemoryError可以讓JVM在出現內存溢出時候Dump出當前的內存轉儲快照。
鏈接地址:
https://blog.csdn.net/xiaoliuliu2050/article/details/51226282