В то время как я пытаюсь определить файлы .xls и .ppt, используя Apache Tika, я получаю сообщение об ошибке java .lang.NoSuchFieldError: SMALLER_BIG_BLOCK_SIZE_DETAILS - PullRequest
0 голосов
/ 26 марта 2020

Это базовый c метод обнаружения, который я использую для обнаружения файлов msoffice.

Tika tika = new Tika();
TikaInputStream inputStream;
String tikaType="";
inputStream = TikaInputStream.get(fileInputStream);
try {
    tikaType = tika.detect(inputStream);
} catch (IOException e) {
    e.printStackTrace();
}
System.out.println("TikaStream Find : " +tikaType);
System.out.println("File Extension : " +fileExtension);

Трассировка стека: -

java.lang.NoSuchFieldError: SMALLER_BIG_BLOCK_SIZE_DETAILS
org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>
(NPOIFSFileSystem.java:93)
org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>
(NPOIFSFileSystem.java:211)
org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>
(NPOIFSFileSystem.java:167)              
org.apache.tika.parser.microsoft.POIFSContainerDetector.
getTopLevelNames(POIFSContainerDetector.java:388)
org.apache.tika.parser.microsoft.POIFSContainerDetector.detect
(POIFSContainerDetector.java:451)
org.apache.tika.detect.CompositeDetector.detect
(CompositeDetector.java:84)
org.apache.tika.Tika.detect(Tika.java:156)
org.apache.tika.Tika.detect(Tika.java:203

Я попытался найти Решение для этого и нашел много, что, возможно, у меня есть две несколько версий POI JAR в моем пути сборки, но попробовал все, но все еще получая эту ошибку.

...