PermGen space - maven m2e tomcat7

时间:2014-06-12 08:19:05

标签: java eclipse maven tomcat out-of-memory

我尝试用maven在tomcat上部署一场战争。 当我使用maven目标tomcat7: run运行时。 Tomcat似乎启动maven连接到数据库,然后我有权发生错误:

java.lang.OutOfMemoryError: PermGen space

我使用m2e,eclipse和tomcat。 我试图在POM.xml中添加:

<configuration>
  <systemProperties>
    <JAVA_OPTS>-Xms256m -Xmx512m -XX:MaxPermSize=256m</JAVA_OPTS>
  </systemProperties>
</configuration>  

在maven的JRE参数中:

-Xms256m -Xmx512m

但没有任何事情发生..

你知道吗?解决这个错误的另一种方法是什么?

3 个答案:

答案 0 :(得分:2)

在配置文件中添加这些参数 -

MAVEN_OPTS=-Xms512m -Xmx1024m

或者,如果直接从命令行运行,可以使用命令提示符设置它们,如 -

set MAVEN_OPTS=-Xms512m -Xmx1024m

答案 1 :(得分:2)

如果使用eclipse IDE而不是使用它,则可以更改VM参数

double click on the server > open Lunch Configuration > Arguments > VM Arguments

并在VM Arguments字段中的两行后面附加

-Xms256m -Xmx1024m -XX:+DisableExplicitGC -Dcom.sun.management.jmxremote
-XX:PermSize=256m -XX:MaxPermSize=512m

它一定会解决你的问题

答案 2 :(得分:0)

如果您在命令提示符下工作: http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError

如果您在IDE中工作: 服务器> VM参数并添加以下内容

-Xmx2048m -XX:MaxPermSize = 1024m