我是 weblogic 的新手。 启动服务器后,当我看到管理员控制台并登录时,它抛出以下异常。
Root cause of ServletException.
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 weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:335)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:288)
Truncated. see log file for complete stacktrace
我做了很多谷歌,找到了一些初始化 JAVA_OPTIONS
的解决方案,比如 -XX:xmx
等等。
我试图在 startdomainenv.cmd
文件中设置它,但没有成功。
请帮忙。 任何指针将不胜感激。
谢谢。
最佳答案
要设置 PermGen 大小,您可以使用例如-XX:PermSize=512m -XX:MaxPermSize=512m
.
关于 Weblogic,设置 JAVA_OPTIONS 并查看这些选项是否作为参数正确传递到您的 Java 进程中。您也可以直接在 startWeblogic.cmd
脚本中设置这些参数。
要检查您的 JAVA_OPTIONS
设置是否正确,请将 echo %JAVA_OPTIONS%
添加到 startWeblogic.cmd
脚本中并查看输出。另外,您可以使用例如jConsole、jstat 或 jmap 在运行时监控 Weblogic 进程的堆使用情况。这将向您显示 PermGen 的大小和占用。
关于java - 在 weblogic 中面临 perm gen space 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14944778/