Имам проблем като споменатия по-горе при извличане на метаданни от tif файл. Има размер над 450 MB. Извличах с помощта на http://commons.apache.org/sanselan/ библиотека в най-новата версия (0.97 ). Когато изпълнявам код:
String xmpMeta = null;
try {
xmpMeta = Sanselan.getXmpXml(file);
} catch ...
, получавам следното проследяване на стека:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at org.apache.sanselan.common.byteSources.ByteSourceInputStream.readBlock(ByteSourceInputStream.java:65)
at org.apache.sanselan.common.byteSources.ByteSourceInputStream.access$000(ByteSourceInputStream.java:24)
at org.apache.sanselan.common.byteSources.ByteSourceInputStream$CacheBlock.getNext(ByteSourceInputStream.java:54)
at org.apache.sanselan.common.byteSources.ByteSourceInputStream$CacheReadingInputStream.read(ByteSourceInputStream.java:147)
...
Трябва да призная, че увеличавах Xms и Xmx свойствата на моя vm и това също се провали, но в крайна сметка не се интересувам от увеличаване на тези свойства, защото мога да получа по-тежки снимки за анализ. Ще бъда благодарен за помощ в този проблем или препращане към друга библиотека за анализ на xmp метаданни от JPEG / Tif файлове.