“java.lang.OutOfMemoryError: Java heap space”

我完全按照教程中的说明构建了 Spring Boot 应用程序,用于上传单个文件。我所做的更改如下所述。

我已将以下属性添加到application.properties

spring.http.multipart.max-file-size=2048MB
spring.http.multipart.max-request-size=2048MB

然后我将以下 jvm 参数添加到项目运行配置中,以将 jvm 堆大小限制为 2GB,如本答案所述

-Xmx2048m

接下来,我还确保我的 Spring Boot 应用程序是针对 64 位 java 运行的,因为32 位 java似乎需要“连续”的堆空间来保留。

但是当我尝试上传大文件时,它仍然给我同样的错误。

目前我在机器上安装了 8GB 内存,其中 1.5GB 是免费的。当有 2 GB 以上的可用 RAM 时,我还尝试运行 Spring Boot 应用程序。

在调试过程中我可以看到上传文件的大小确实是 1+GB:

http://img4.mukewang.com/610265bb0001272607070381.jpg

但是在执行第 73 行时file.getBytes(),它抛出异常。

我在这里缺少什么?


胡子哥哥
浏览 438回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java