![](/img/trans.png)
[英]Exception in thread “main” java.lang.OutOfMemoryError: Java heap space
[英]Exception in thread “main” java.lang.OutOfMemoryError: Java heap space not fixed
這不是一個重復的問題,我看到了 ,我想運行一個Java prograrm並出現以下錯誤:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at edu.stanford.nlp.ie.crf.CRFLogConditionalObjectiveFunction.empty2D(CRFLogConditionalObjectiveFunction.java:892)
at edu.stanford.nlp.ie.crf.CRFLogConditionalObjectiveFunction.<init>(CRFLogConditionalObjectiveFunction.java:134)
at edu.stanford.nlp.ie.crf.CRFLogConditionalObjectiveFunction.<init>(CRFLogConditionalObjectiveFunction.java:117)
at edu.stanford.nlp.ie.crf.CRFClassifier.getObjectiveFunction(CRFClassifier.java:1792)
at edu.stanford.nlp.ie.crf.CRFClassifier.trainWeights(CRFClassifier.java:1798)
at edu.stanford.nlp.ie.crf.CRFClassifier.train(CRFClassifier.java:1713)
at edu.stanford.nlp.ie.AbstractSequenceClassifier.train(AbstractSequenceClassifier.java:763)
at edu.stanford.nlp.ie.AbstractSequenceClassifier.train(AbstractSequenceClassifier.java:751)
at edu.stanford.nlp.ie.crf.CRFClassifier.main(CRFClassifier.java:2917)
根據這個,我試試這個:
java -Xms2000m -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier -prop fa.prop
但錯誤無法解決,我再次看到錯誤! 當我設置的值超過2000m時,我的操作系統崩潰了,或者我得到了以下輸出:
...
...
//stanford log
...
Time to convert docs to data/labels: 8.8 seconds
Killed
我該如何解決
編輯:
為此
[stanford-ner]$ java -Xms1G -Xmx50G -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier -prop fa.prop
我有這個錯誤:
[1000][2000][3000][4000][5000][6000]OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f04c7c00000, 1225785344, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 1225785344 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /stanford-ner/hs_err_pid1536.log
與其嘗試使用Xms選項,
java -Xms2000m -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier -prop fa.prop
嘗試使用Xmx,如下所示,
java -Xmx2000m -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier -prop fa.prop
從軟件的目的來看,它很可能會占用大量內存,因此可以合理地假設1GB的堆不夠用,因此您必須進一步增加堆大小。
當您嘗試使用時收到的消息暗示您正在使用
這可能都將您的最大堆大小限制為約1.5GB(至少在Windows上)。
因此,請確保在64位OS上使用64位VM,然后再次嘗試增加堆大小。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.