“ java.lang.OutOfMemoryError:PermGen space”在Maven构建[重复]

问题描述 投票:184回答:7

[在构建Maven项目时收到此错误,我增加了MAVEN_OPTS,但同样,我发现了一些类似的帖子,但它们引用的是其他内容。我该如何解决?

The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: PermGen space
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at org.codehaus.plexus.compiler.javac.IsolatedClassLoader.loadClass(IsolatedClassLoader.java:56)
        at com.sun.tools.javac.comp.Annotate.<init>(Annotate.java:52)
        at com.sun.tools.javac.comp.Annotate.instance(Annotate.java:36)
        at com.sun.tools.javac.jvm.ClassReader.<init>(ClassReader.java:215)
        at com.sun.tools.javac.jvm.ClassReader.instance(ClassReader.java:168)
        at com.sun.tools.javac.main.JavaCompiler.<init>(JavaCompiler.java:293)
        at com.sun.tools.javac.main.JavaCompiler.instance(JavaCompiler.java:72)
        at com.sun.tools.javac.main.Main.compile(Main.java:340)
        at com.sun.tools.javac.main.Main.compile(Main.java:279)
        at com.sun.tools.javac.main.Main.compile(Main.java:270)
        at com.sun.tools.javac.Main.compile(Main.java:87)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.plexus.compiler.javac.JavacCompiler.compileInProcess(JavacCompiler.java:420)
        at org.codehaus.plexus.compiler.javac.JavacCompiler.compile(JavacCompiler.java:141)
        at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:493)
        at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:114)
        at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)

我不像如何解决它[那样担心] >>[在构建Maven项目时收到此错误,我增加了MAVEN_OPTS,但同样,我发现了一些类似的帖子,但它们引用的是其他内容。我该如何解决?系统出局了...

java maven out-of-memory permgen
7个回答
309
投票
[当您说增加MAVEN_OPTS时,您增加了什么价值?您是否增加了MaxPermSize,例如:

export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m"


23
投票
[如果您想将POM的这一部分用于可重复的构建,则可以使用一些插件的fork-variant(特别是compiler:compilesurefire:test):

16
投票
当然,要增加烫发空间的大小。使用-XX:MaxPermSize=128m选项。将该值设置为适当的值。

1
投票
[遇到此异常时,我通过使用Run Configurations ...面板解决了此问题,如下图所示。特别是在JRE选项卡上,VM参数是关键的(

“-Xmx1024m -Xms512m -XX:MaxPermSize = 1024m -XX:PermSize = 512m“


1
投票
这个非常烦人的错误,所以我做了:在Windows下:

0
投票
当您尝试使用git mvn clean install建立战争时,我找到了git bash命令的解决方案Maven构建错误中的“ java.lang.OutOfMemoryError:PermGen空间”来了

0
投票
当永久生成堆已满,并且我们中的一些人使用命令提示符在Windows中构建maven项目时,我们将遇到此错误。因为我们需要增加堆大小,所以我们可以设置环境变量@ ControlPanel / System和Security / System,然后在其中单击

更改设置

© www.soinside.com 2019 - 2024. All rights reserved.