问题描述
在公司的系統中點擊了一個打印的功能,前臺是用flex,后臺是java,打印的時候是彈出來一個jsp頁面,中間夾了大量的計算。在本地測試沒事 可以彈出來jsp頁面,但是放在測試機上時候就會報如下異常,我在測試服務器的環境變量里設置了 变名:JAVA_OPTS 变量值:-Xms1024m -Xmx1024m 還是沒有作用,不知道應該怎么處理了。是程序的問題嗎?java.lang.OutOfMemoryError: PermGen spaceat java.lang.ClassLoader.defineClass1(Native Method)at java.lang.ClassLoader.defineClass(ClassLoader.java:620)at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)at java.net.URLClassLoader.access$000(URLClassLoader.java:56)at java.net.URLClassLoader$1.run(URLClassLoader.java:195)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:188)at java.lang.ClassLoader.loadClass(ClassLoader.java:306)at java.lang.ClassLoader.loadClass(ClassLoader.java:251)at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)at org.eclipse.jdt.internal.compiler.parser.Parser.consumeClassHeaderName1(Parser.java:2161)at org.eclipse.jdt.internal.compiler.parser.Parser.consumeRule(Parser.java:5103)at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9020)at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9251)at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9208)at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:7864)at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:587)at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:357)at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:371)at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:413)at org.apache.jasper.compiler.Compiler.compile(Compiler.java:317)at org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)at org.apache.jasper.compiler.Compiler.compile(Compiler.java:282)at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
解决方案
java.lang.OutOfMemoryError: PermGen space 不是-Xms1024m -Xmx1024m能解决的加上-XX:PermSize=128m-XX:MaxPermSize=192m