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 Basicapp子目录下的pdfsam.cfg文本文件,找到[JavaOptions]部分,添加一行 java-options=-Xmx1024m 将内存量增加到 1GB 并重新启动 PDFsam Basic. 如果这不起作用,您可以尝试使用 -Xmx1512m 将其推得更高