我有一个Java实现的程序,它读取MATLAB代码库,计算每个文件的度量标准,并将结果存储在HashMap中,其中键是有问题的文件,值是存储值的整数列表对于每个计算的指标。我在包含3600个文件的代码存储库上运行它没有问题。但是,当我尝试在包含超过30.000个MATLAB文件的代码存储库上运行它时,我收到以下错误:
Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded
有没有办法解决这个问题?
更新(02/11/2016):添加了eclipse.ini文件内容
-startup
plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
--launcher.library
C:\Users\Current_User\.p2\pool\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.400.v20160518-1444
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Dosgi.requiredJavaVersion=1.8
-Xms1024m
-Xmx8192m
-Declipse.p2.max.threads=10
-Doomph.update.url=http://download.eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/