在POM.xml中插入MAVEN_OPTS

Spi*_*rit 6 pom.xml maven

我必须增加java堆空间来编译我的项目.我找到的唯一方法是修改mvn.bat并设置:

set MAVEN_OPTS=-XX:PermSize=256m -XX:MaxPermSize=256m -Xms1300M -Xmx1300M
Run Code Online (Sandbox Code Playgroud)

比所有同事都必须更改文件localy.我希望将所有内容保留在我的项目中,而不是本地.我可以在POM.xml或其他文件中插入吗?

Nie*_*sen 6

设置MAVEN_OPTS通常为运行构建的JVM提供参数,并且这些参数传递给编译器,因为它以内联方式运行.您可能已经注意到maven-surefire-plugin用于测试通常会分叉一个单独的进程,因此将选项传递给插件将绑定在pom.xml中.

如果你也分叉编译过程并在那里添加标志,如下例所示.

注意fork和编译器args

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <fork>true</fork>
          <meminitial>128m</meminitial>
          <maxmem>512m</maxmem>
          <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>
Run Code Online (Sandbox Code Playgroud)