當我嘗試導入我的主要序列化文件時,程序停止工作並拋出:Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
。 我知道這個異常可能會因爲內存不足而拋出,但我不認爲這是這種情況下的原因。 在我的電腦中,我有8GB的RAM。這是Eclipse中的文件的.ini:java.lang.OutOfMemoryError:導入eclipse中的序列化文件的Java堆空間
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20150204-1316
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
1024M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
1024m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx7500m
-XX:+UseConcMarkSweepGC
-XX:-UseGCOverheadLimit
我注意到,雖然日食可以使用幾乎所有我的電腦的內存,發生此錯誤時,所使用的RAM只是5GB的約。 我試圖導入的文件是500Mb。同一個程序適用於350Mb的許多文件。 這是代碼,其中的程序粉碎就行了,是我的程序的第一行:
Classifier cls1 = (Classifier) weka.core.SerializationHelper.read("C:\\Users\\.....\\FileToImport.model");
誰知道,我使用的Weka庫。 謝謝你的答案!
您是否需要單一負載的完整內容? – Garry
我不明白你的意思,但是我應該加載文件和使用cls1 –