maven中PermGen space解决

来源:互联网 发布:软件项目实施阶段 编辑:程序博客网 时间:2024/06/12 20:32

Windows:

找到文件%M2_HOME%\bin\mvn.bat

@REM set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE...
   在注释下面加入一行:
   set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m

Linux:
      mvn文件
      export   MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m


 java JVM虚拟机选项: Xms Xmx PermSize MaxPermSize 区别
      -Xms128m 
          表示JVM Heap(堆内存)最小尺寸128MB,初始分配
      -Xmx512m 
        
      表示JVM Heap(堆内存)最大允许的尺寸256MB,按需分配
       说明:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,
       此错误来自JVM不是Throwable的,无法用try...catch捕捉。   


        PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)
如,class对象、方法对象这些可反射(reflective)对象分配内存限制,
这些内存不包括在Heap(堆内存)区之中。


       -XX:PermSize=64MB 最小尺寸,初始分配
      -XX:MaxPermSize=256MB 最大允许分配尺寸,按需分配
      过小会导致:java.lang.OutOfMemoryError: PermGen space

0 0