Map failed
您正在拆分PDF文件,它们非常大,大到导致PDFsam Basic被最后的文字窒息?
Caused by: java.io.IOException: Map failed at sun.nio.ch.FileChannelImpl.map(Unknown Source) ~[na:1.8.0_31] at org.sejda.io.MemoryMappedSeekableSource.(MemoryMappedSeekableSource.java:59) ~[pdfsam-community-3.0.1.RELEASE.jar:na] at org.sejda.io.SeekableSources.seekableSourceFrom(SeekableSources.java:74) ~[pdfsam-community-3.0.1.RELEASE.jar:na] at org.sejda.impl.sambox.component.DefaultPdfSourceOpener.open(DefaultPdfSourceOpener.java:61) ~[pdfsam-community-3.0.1.RELEASE.jar:na] ... 12 common frames omitted Caused by: java.lang.OutOfMemoryError: Map failed at sun.nio.ch.FileChannelImpl.map0(Native Method) ~[na:1.8.0_31]解决方案: 如果您使用的是 64 位操作系统,请确保您运行的是 PDFsam Basic 版本 4 或更高版本
Java heap space
这是不同的,仍然是 OutOfMemoryError
,但是因为不同的原因,请参阅 Map失败
的Java堆空间
java.lang.OutOfMemoryError: Java heap space at org.sejda.io.MemoryMappedSeekableSource.readPage(MemoryMappedSeekableSource.java:120) at org.sejda.io.MemoryMappedSeekableSource.read(MemoryMappedSeekableSource.java:100) at org.sejda.io.BufferedSeekableSource.ensureBuffer(BufferedSeekableSource.java:110) at org.sejda.io.BufferedSeekableSource.read(BufferedSeekableSource.java:100)解决方案:
-
版本 4: 使用文本编辑器打开 PDFsam Basic 安装目录中的
pdfsam.l4j.ini
文本文件,找到这一行-Xmx512m
告诉 PDFsam Basic 使用 512MB 堆运行 内存,将其更改为-Xmx1024m
将内存量增加到 1GB,然后重新启动 PDFsam Basic. 如果这不起作用,您可以尝试使用-Xmx1512m
将其推得更高 -
版本 5: 使用文本编辑器打开PDFsam Basic
app
子目录下的pdfsam.cfg
文本文件,找到[JavaOptions]
部分,添加一行java-options=-Xmx1024m
将内存量增加到 1GB 并重新启动 PDFsam Basic. 如果这不起作用,您可以尝试使用-Xmx1512m
将其推得更高