2013-04-29 55 views
0

我的石英作業在下面拋出一個錯誤。 有誰知道如何解決內存不足的問題?石英sheduler拋出內存

Exception in thread "DefaultQuartzScheduler_QuartzSchedulerThread" java.lang.OutOfMemoryError: Java heap space 
Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]" java.lang.OutOfMemoryError: Java heap space 
    at java.util.Arrays.copyOf(Arrays.java:2367) 
    at java.lang.String.<init>(String.java:197) 
    at java.io.Win32FileSystem.resolve(Win32FileSystem.java:259) 
    at java.io.File.<init>(File.java:341) 
    at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:743) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:477) 
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1449) 
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:301) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1374) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519) 
    at java.lang.Thread.run(Thread.java:722) 
Exception in thread "http-bio-8080-AsyncTimeout" java.lang.OutOfMemoryError: Java heap space 
Exception in thread "Timer-2" java.lang.OutOfMemoryError: Java heap space 
Exception in thread "Timer-1" java.lang.OutOfMemoryError: Java heap space 

回答

0

石英工作中的內存不足異常很可能是一個症狀,而不是問題的原因。當您的作業運行時,您的應用程序可能已經接近耗盡可用堆。

您可能在其他地方有內存泄漏(例如不斷擴大的集合)。您將需要使用分析器來查找此問題。

或者您可能需要爲應用程序分配更多堆空間。在這種情況下,您可以在用於啓動Tomcat的catalina腳本中設置-Xmx參數。

+0

我已經按照你的建議嘗試了-Xmx。它效果更好,但它仍然需要太多的內存。 – 2013-04-30 15:37:51

+0

什麼是分析器? 你可以引導我,因爲我從來沒有用過它? – 2013-04-30 15:38:23

+0

分析器是一種工具,可用於分析應用程序的性能。對於內存分析,我以前成功使用過Eclipse Memory Analyzer,http://www.eclipse.org/mat/如果Eclipse不是您首選的IDE,那麼您可以單獨運行它。 – darrenmc 2013-05-01 14:49:25