Java.lang.OutOfMemoryError:PermGen space is permanent Generation space, which is the permanent storage area of memory.
Since this memory is primarily stored by the JVM with class and meta information, class is placed in the PermGen space area when it is loaded, and unlike the heap area where the instance is stored, Sun's GC does not run on the main program for PermGen Space for cleanup, so if your app loads a lot of classes, there's a good chance that permgen space will overflow.
Workaround: Manually set the MaxPermSize size
Under Window
To modify Tomcat_home/bin/catalina.bat, add the following line to the JAVA code "echo" Using catalina_base: $CATALINA _base "": Set Java_opts=%java_opts %-server-xx:permsize=128m-xx:maxpermsize=512m
Linux under
Modify Tomcat_home/bin/catalina.sh
Add the following: java_opts= "$JAVA _opts-server-xx:permsize=128m-xx:maxpermsize=512m"
Tomcat Run program is slow to run for a period of time error: Java.lang.OutOfMemoryError:PermGen space