运行mvn install会导致OOM错误

时间:2012-01-27 17:16:16

标签: java maven

如果我正在构建投影使用:

mvn install

我看到以下内容:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] Failure executing javac, but could not parse the error:


The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: PermGen space

我不确定在哪里更新我的java选项?

我在ubuntu上运行它。

2 个答案:

答案 0 :(得分:7)

如果您不喜欢依赖某人的环境,您可以指定fork编译器插件并为其分配足够的内存。

我建议您实际在父POM项目的<pluginManagment>部分执行此操作

<build>
  ...
  <pluginManagment>
    ...
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>2.3.2</version>
      <configuration>
        ...

        <!-- Memory management -->
        <fork>true</fork>
        <meminitial>128m</meminitial>
        <maxmem>512m</maxmem>

        ...
      </configuration>
    </plugin>
    ...
  </pluginManagment>
  ...
</build>

答案 1 :(得分:4)

调整你的maven选项。通常,这在/ etc / mavenrc,$ {HOME} /.mavenrc或Windows环境属性对话框中设置。

export MAVEN_OPTS="-Xmx512M -XX:MaxPermSize=512M" 

对某些人有用,你可能需要提高数字(取决于你的情况)

第一个选项“-Xmx512M”配置最大内存,而第二个选项“-XX:MaxPermSize = 512M”允许PermGen空间增大(在这种情况下)最大内存。