java.lang.NoClassDefFoundError:无法初始化类org.apache.pdfbox.pdmodel.font.PDFont

问题描述 投票:0回答:2

我在wildfly模块中使用Apache Tika(tika-app 1.17)。当我开始提取PDF时,它总是抛出错误:

java.lang.NoClassDefFoundError:无法初始化类org.apache.pdfbox.pdmodel.font.PDFont

对于其他文件扩展名,它工作正常。我已经尝试了apache-tika module.xml中的依赖项到PDFbox从standalone.xml显式加载了org.apache.pdfbox

我也尝试过以下结构app1.war - >(WEB-INF)lib - > app.jar-> lib - > tika-app-1.17.jar

我还有jboss-deployment-structure.xml

    <dependencies>
      <module name="com.company.tika" />         
    </dependencies>

被称为模块依赖。在jar的MANIFEST.MF中,我依赖于com.company.tika

似乎没什么用。

任何建议或帮助都会感激不尽。

提前致谢

药品

pdfbox apache-tika wildfly-10
2个回答
2
投票

我可以解决这个问题。问题是pdfbox的较小版本,fontbox和jempbox不一样。因此PDFFont没有初始化,因为内部它也需要加载fontbox的类,并且可能是类的版本ID不匹配


0
投票

我有类似的问题。在linux下我只是通过以下方式安装缺少的库pdfbox:

apt-get install libpdfbox-java
and restart solr server

在此修改之后,我需要更改./bin/solr中的solr start参数

SOLR_JAVA_STACK_SIZE='-Xss256kb'

SOLR_JAVA_STACK_SIZE='-Xss256M'

因为我有错误

java.lang.StackOverflowErrorjava.lang.RuntimeException:java.lang.StackOverflowError

当然我再次重启solr服务器。

我希望,它可以帮助您解决这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.