2

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

我可以在 Eclipse 之外运行相同的构建(使用增加的 heapsize):

[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 args 添加到 Java 首选项的 Installed JREs 选项卡中。

4

1 回答 1

3

目前有一个关于此的问题,请参阅MNGECLIPSE-1182和解决方法:

...您可以在 Window / Preferences / Java / Installed JREs 中指定默认的 JVM 参数。

但实际上,这条评论让我感到困惑:

M2_OPTS[在使用外部 maven 安装时,当前的 m2eclipse 插件似乎仍然尊重 环境变量。

所以我只是定义了它们: 从命令提示符运行和MAVEN_OPTS从m2eclipse 运行 maven。例如集 mvnM2_OPTSM2_OPTS=-Xmx256M -XX:MaxPermSize=128M

我正在使用 Maven 2.1.0 和 Maven Integration for Eclipse 版本 0.9.9.200907071528 和 Eclipse Galileo。]

于 2009-11-10T05:43:29.183 回答