java.lang.OutOfMemoryError:下载>时Object.getBytes()方法上的Java堆空间90MB文件

时间:2017-08-08 18:59:42

标签: java arrays file download java-io

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.util.Arrays.copyOf(Arrays.java:3236)
    at java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:118)
    at java.io.ByteArrayOutputStream.ensureCapacity(ByteArrayOutputStream.java:93)
    at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:153)`

尝试下载大于90MB的文件。我在致电Object.getBytes()时遇到异常。 你能帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

您正在尝试将90mb文件读入默认情况下仅为64mb的JVM。您可以从命令行更改内存设置:

-Xms128m -Xmx256m

这会将JVM的初始大小设置为128mb,最大大小设置为256mb。您当然可以根据自己的需要进行更改。

答案 1 :(得分:0)

InputStream inputStream = object.getStream(); , resolves this issue.Im able to download 2GB files as well.