內存溢出 ava.lang.OutOfMemoryError: Java heap space


強迫垃圾收集,獲得一個堆的對象快照。
做任何工作可能正在導到無意的對象引用保持。
強迫另一次垃圾收集並獲得第二次堆的對象快照。
比較這兩個快照,觀察從第一個快照到第二個快照哪些對象在數量上有所增加。因爲你在快照之前強迫垃圾收集,剩下的將是所有被應用程序引用的對象,比較兩個快照將準確的標識那些新創建的、保留在應用程序裏的對象。
根據你對應用程序的認識,決定兩個快照比較中,哪些對象正在無意的保持對象引用。
跟蹤前導引用,找到哪些對象正在引用這些無意的保持對象,直到你找到導致此問題的源對象

啓動虛擬機的時候,加上一個參數:-Xms800m -Xmx800m就好了
-Xms <size>
設置JVM初始化堆內存大小

-Xmx <size>
設置JVM最大的堆內存大小

如果是應用程序,則:java -Xms800m -Xmx800m 你的類名
如果是tomcat之類的web服務器,在這個服務器的啓動文件後面加上這個參數即可。

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at org.jaxen.expr.IdentitySet.contains(IdentitySet.java:73)
        at org.jaxen.expr.DefaultStep.evaluate(DefaultStep.java:165)
        at org.jaxen.expr.DefaultLocationPath.evaluate(DefaultLocationPath.java:
154)
        at org.jaxen.expr.DefaultAbsoluteLocationPath.evaluate(DefaultAbsoluteLo
cationPath.java:117)
        at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:108)
        at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:705)
        at org.jaxen.BaseXPath.selectNodes(BaseXPath.java:227)
        at org.dom4j.xpath.DefaultXPath.selectNodes(DefaultXPath.java:132)
        at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:166)
        at com.sunland.jdata.Pm01XmlFactory.readSourceData(Pm01XmlFactory.java:1
20)
        at com.sunland.jdata.Pm01XmlFactory.readSourceDataDir(Pm01XmlFactory.jav
a:95)
        at com.sunland.operation.Pm01DbBean.done(Pm01DbBean.java:28)
        at com.sunland.factory.Pm01Task.doCreate(Pm01Task.java:44)
        at com.sunland.factory.Pm01Task.run(Pm01Task.java:31)
        at com.sunland.jdata.MainStart.main(MainStart.java:69)

發佈了48 篇原創文章 · 獲贊 14 · 訪問量 49萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章