2009-11-10 71 views
2

看来m2eclipse无法识别我的$ M2_OPTS变量。

我可以运行的日食罚款相同的生成外(与手摇堆大小):

[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESSFUL 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 51 seconds 
[INFO] Finished at: Tue Nov 10 00:00:02 EST 2009 
[INFO] Final Memory: 72M/187M 
[INFO] ------------------------------------------------------------------------ 

但是,当我跑这跟m2eclipse的我总是耗尽内存:

[INFO] ------------------------------------------------------------------------ 
[ERROR] FATAL ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Java heap space 
[INFO] ------------------------------------------------------------------------ 
[INFO] Trace 
    java.lang.OutOfMemoryError: Java heap space 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) 
    ... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 1 minute 27 seconds 
[INFO] Finished at: Mon Nov 09 23:56:32 EST 2009 
[INFO] Final Memory: 43M/81M 
[INFO] ------------------------------------------------------------------------ 

任何想法?

解决方案:将这些mem添加到Java偏好设置的Installed JREs选项卡中。

回答

3

目前关于这个问题,见MNGECLIPSE-1182和解决方法:

...你可以在窗口/首选项/ Java的/安装的JRE指定默认的JVM参数。

但实际上,这种注释困惑我:

[看来好像当前 m2eclipse插件时 使用外部Maven安装还是荣誉的 M2_OPTS环境变量。

所以我刚才定义他们两个: MAVEN_OPTS运行mvn从 命令提示和M2_OPTS从m2eclipse的 运行Maven。例如。设置 M2_OPTS=-Xmx256M -XX:MaxPermSize=128M

我使用Maven 2.1.0和Maven 集成Eclipse版本 0.9.9.200907071528与Eclipse伽利略。 ]

+0

嗯。好点子。我又看了一遍,我定义了$ MAVEN_OPTS,而不是$ M2_OPTS。 我添加了$ M2_OPTS之后,事情似乎也以相同的方式发挥作用。所以我同样感到困惑。我清除了Maven设置和所有内容,但仍然没有骰子。 – cwash 2009-11-10 06:17:26

+0

我启动了已安装的虚拟机上的部件,并且一切正常。 感谢您的帮助。 – cwash 2009-11-10 06:21:07

+0

我遵循这个相同的答案来指定其他的MAVEN_OPTS参数(我的HTTPS Artifactory服务器的密钥仓库和信任仓库),它修复了一个类似的问题,即没有从Artifactory下载JAR,因为Eclipse没有使用MAVEN_OPTS与Artifactory通信。 – BennyMcBenBen 2012-01-18 17:50:33