我在eclipse中通过tomcat调试项目,错误抛出: 并且日食没有反应,错误报告如
守护程序系统线程[Java2D Disposer](已暂停(例外 OutOfMemoryError))拥有:Win32GraphicsEnvironment(id = 116)拥有: FontStrikeDisposer(id = 117)D3DGraphicsDevice.getDeviceCaps(int) line:108 D3DGraphicsDevice.createDevice(int)行:87
Win32GraphicsEnvironment.makeScreenDevice(int)行:208
Win32GraphicsEnvironment(SunGraphicsEnvironment).getScreenDevices() line:139 Win32GraphicsEnvironment.getDefaultScreenDevice()行: 96 StrikeCache.disposeStrike(FontStrikeDisposer)行:284 FontStrikeDisposer.dispose()行:98
当我再次调试时,错误报告如
严重:servlet [springDispatcher]的Servlet.service()与上下文有关 path [/ api]抛出异常[处理程序处理失败;嵌套 异常是带有root的java.lang.OutOfMemoryError:PermGen space] 导致java.lang.OutOfMemoryError:PermGen空间at java.lang.ClassLoader.defineClass1(Native Method)at java.lang.ClassLoader.defineClass(ClassLoader.java:800)at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 在 org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) 在 org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) at java.lang.ClassLoader.defineClass1(Native Method)at java.lang.ClassLoader.defineClass(ClassLoader.java:800)at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 在 org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) 在 org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) 在 org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:144) 在 org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:41) 在 org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:85) 在 org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:55) 在 org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:169) 在 org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:149) 在 org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:84) 在 org.springframework.data.redis.core.DefaultHashOperations.get(DefaultHashOperations.java:44) 在 com.unistrong.tracker.service.cache.UserCache.getUserToken(UserCache.java:31) 在 com.unistrong.tracker.handle.UserHandle.saveLogon(UserHandle.java:439) 在 com.unistrong.tracker.web.UserController.logon(UserController.java:98) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:606)at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215) 在 org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132) 在 org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
线程“Java2D Disposer”中的异常
我已经改变了eclipse.ini和tomcat以扩大内存,但错误仍然存在
如何解决问题?提前谢谢你!
答案 0 :(得分:1)
您需要通过java命令参数增加PermGen大小:
-XX:MaxPermSize=128M