一、报错信息
运行 从 Intellij IDEA 中导出的程序 , 报如下错误 :
D:\map_zkhw>java -jar TrunkScheduling.main.jar
Exception in...出现
Exception in thread "Image Fetcher 0" java.lang.OutOfMemoryError: Java heap space
错误 , 就意味着 Java...虚拟机 的堆内存区域不足 , 突然加载一张大图片 , 无法为 图片对象 在堆内存中分配内存空间 , 此时就会抛出 " Java heap space " 这个错误 ;
我加载的是一张 50M 左右的 地图图片..., 图片很大 ;
如果 在 程序中存在内存泄漏 , 一些大的数组 / 集合 / 数据对象 始终没有释放 , 会在运行的过程中 , 报该错误 ;
三、解决方案 - 针对内存不足问题
针对内存不足的问题...可以设置 Java 虚拟机 最大堆大小 ;
下面的命令中 , 运行 jar 包 , 在命令中添加了 -Xms512m 参数 , 设置 JVM 起始堆大小 512M , 通过 -Xmx1024m 参数 设置最大堆大小