运行mvn eclipse:eclipse时,经常会出现因为maven项目过大,导致内存不足java栈溢出的error, 信息如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | [INFO] ------------------------------------------------------------------------ [ERROR] FATAL ERROR [INFO] ------------------------------------------------------------------------ [INFO] Java heap space [INFO] ------------------------------------------------------------------------ [INFO] Trace java.lang.OutOfMemoryError: Java heap space at hidden.org.codehaus.plexus.util.xml.pull.MXParser.ensurePC(MXParser.j ava: 3073 ) at hidden.org.codehaus.plexus.util.xml.pull.MXParser.nextImpl(MXParser.j ava: 1389 ) at hidden.org.codehaus.plexus.util.xml.pull.MXParser.next(MXParser.java: 1105 ) at hidden.org.codehaus.plexus.util.xml.pull.MXParser.nextTag(MXParser.ja va: 1090 ) at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parsePluginManagement( MavenXpp3Reader.java: 2817 ) at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseBuild(MavenXpp3Re ader.java: 789 ) at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Re ader.java: 1996 ) |
目前网络上通常的方法是在mvn执行的脚本中修改 MAVEN_OPTS,具体方法可参见博文:http://juvenshun.iteye.com/blog/240257
但这种方法并不是推荐的,首先,每个project都要去修改执行脚本成本太大,其次,之后maven升级后,还需要修改。
我们应尽可能不去修改任何maven安装目录下的文件。
推荐的方式是将MAVEN_OPTS设定为环境变量,一次制定,一劳永逸。
win7下设置方法如下:
1 右键我的电脑,选择属性2 选择 高级系统设置3 在 高级 tab页下,点击环境变量按钮4 创建一个用户变量,变量名是MAVEN_OPTS 值为 -Xmx1024m (or more) 5 别忘保存...
参考:http://stackoverflow.com/questions/2819853/setting-java-heap-space-under-maven-2-on-windows