当前位置: 首页 > 面试题库 >

Maven构建中的“ java.lang.OutOfMemoryError:PermGen空间”

陈俊郎
2023-03-14
问题内容

我在构建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,您增加了什么价值?您是否增加了MaxPermSize,例如:

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

(或在Windows上:)

set MAVEN_OPTS=-Xmx512m -XX:MaxPermSize=128m


 类似资料:
  • 问题内容: 我收到以下错误“ http-9000-5” java.lang.OutOfMemoryError:PermGen空间 org.apache.catalina.core.ApplicationDispatcher调用SEVERE:Servlet jsp的Servlet.service()抛出异常java.lang.OutOfMemoryError:PermGen空间。 我的应用程序使用a

  • 问题内容: 环境:Linux / Windows7,Java 1.6.0.03/37或1.7 我下载了jenkins.war,并使用以下脚本/命令进行了初始设置后,我下载了一些插件(10-15),并尝试重新启动Jenkins,它起作用了。然后,我得到了更多的插件(总共30-40个),选择了Install或download + then + install,Jenkins却没有出现。 即使用star

  • 问题内容: 我收到此异常。我正在使用Eclipse Juno和Tomcat 7.0。在控制台中,每10-15分钟至少发生一次此异常。怎么解决呢? 问题答案: 与其在eclipse.ini中进行更改,不如安装Java 8 。 我安装了Java 8,但现在没有异常。

  • 类似的问题是存在的,但没有一个答案受到关注.. 这里说“解决这个问题的一个方法是JDBC驱动程序由通用类加载器而不是应用程序类加载器加载,你可以通过将驱动程序的jar文件转移到tomcat lib中,而不是捆绑在web应用程序的war文件中 不明白通过通用类加载器加载意味着什么,它与应用程序类加载器有什么不同。

  • 我正在TFS2015中运行一个构建,我得到了这个错误: 在org.apache.maven.lifecycle.internal.mojoexecutor.execute(mojoexecutor.java:217) 原因:org.apache.maven.plugin.MojoExecutionException:编译时出现致命错误 222 2018-07-25T11:22:37.0150577