gpt4 book ai didi

tomcat - Tomcat 上的 MobileFirst Platform Foundation Server,出现 permgen 错误

转载 作者:行者123 更新时间:2023-11-28 23:31:34 25 4
gpt4 key购买 nike

我在装有 Windows server 2008 r2 的 Tomcat 上完成了 IBM MobileFirst Server 6.3 的安装,并成功部署了我的第一个 war 文件。接下来我创建了第二个运行时,从服务器配置工具部署了不同的 war 文件并重新启动了 Tomcat。 Tomcat 出错,重启失败。

来自服务器日志:

SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)

Caused by: java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
at java.lang.Class.privateGetPublicMethods(Class.java:2571)
at java.lang.Class.getMethods(Class.java:1429)
at java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1261)
at java.beans.Introspector.getTargetMethodInfo(Introspector.java:1122)
at java.beans.Introspector.getBeanInfo(Introspector.java:414)
at java.beans.Introspector.getBeanInfo(Introspector.java:161)
at org.apache.wink.common.internal.registry.metadata.ClassMetadata.<init>(ClassMetadata.java:67)
at org.apache.wink.common.internal.registry.metadata.AbstractMetadataCollector.<init>(AbstractMetadataCollector.java:51)
at org.apache.wink.common.internal.registry.metadata.ProviderMetadataCollector.<init>(ProviderMetadataCollector.java:42)
at org.apache.wink.common.internal.registry.metadata.ProviderMetadataCollector.collectMetadata(ProviderMetadataCollector.java:103)
at org.apache.wink.common.internal.lifecycle.LifecycleManagerUtils.collectClassMetadata(LifecycleManagerUtils.java:74)
at org.apache.wink.common.internal.lifecycle.LifecycleManagerUtils.createPrototypeObjectFactory(LifecycleManagerUtils.java:66)
at org.apache.wink.common.internal.lifecycle.ScopeLifecycleManager.createObjectFactory(ScopeLifecycleManager.java:67)
at org.apache.wink.common.internal.lifecycle.LifecycleManagersRegistry.getObjectFactory(LifecycleManagersRegistry.java:79)
at org.apache.wink.common.internal.registry.ProvidersRegistry.addProvider(ProvidersRegistry.java:110)
at org.apache.wink.server.internal.application.ApplicationProcessor.processClasses(ApplicationProcessor.java:188)
at org.apache.wink.server.internal.application.ApplicationProcessor.process(ApplicationProcessor.java:91)
at org.apache.wink.server.internal.DeploymentConfiguration.addApplication(DeploymentConfiguration.java:339)
at org.apache.wink.server.internal.RequestProcessor.registerDefaultApplication(RequestProcessor.java:99)
at org.apache.wink.server.internal.RequestProcessor.<init>(RequestProcessor.java:81)
at org.apache.wink.server.internal.servlet.RestServlet.createRequestProcessor(RestServlet.java:166)
at org.apache.wink.server.internal.servlet.RestServlet.init(RestServlet.java:103)
at javax.servlet.GenericServlet.init(GenericServlet.java:158)

我曾尝试通过 setenv.sh 修改内存设置:

JAVA_OPTS="-Xms512m -Xmx1024m -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled"

并没有显示出任何效果。
我还能做什么?

最佳答案

看起来您已经遵循了此答案中的第二个选项:https://stackoverflow.com/a/10392385/1530814

既然它显然不适合你,为什么不试试第一个选项呢?

-XX:MaxPermSize=SIZE_VALUE

关于tomcat - Tomcat 上的 MobileFirst Platform Foundation Server,出现 permgen 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29643340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com