TikaApp JAR课程

时间:2014-01-30 13:42:14

标签: apache-tika

我正在使用Apache Tika 1.4从我的文档中提取内容。但它也附带了org.bouncycastle。*类,我使用的另一个版本的bouncycastle与Tika软件包冲突。

如果Tika使用bouncycastle(bcprov)jar,我可以使用Maven中的排除标记排除它,但是TikaApp已经将org.bouncycastle类复制到其中,因此,我无法排除它们。

有一些方法可以删除这个包,而无需重新编译或分支Apache Tika,并设置为使用另一个JAR到这个指定的包或类似的东西?

谢谢

1 个答案:

答案 0 :(得分:1)

你的问题是你完全使用了Tika的错误包装!

tika-app jar是一个独立的,可运行的jar,包含所有Tika代码+让它运行所需的所有依赖项。它旨在从命令行中独立使用,以允许非Java用户调用Tika,并允许轻松测试。

如果您正在编写自己的Java应用程序(听起来就像这样),那么您至少需要依赖tika-core工件。它包含所有接口,mime检测,服务加载器等。您几乎肯定也希望依赖tika-parsers,它提供了所有代码来实际解析文件格式,同时提供他们所需的依赖。这为您提供了您想要的完全控制。

最后,对于那些喜欢OSGi提供的控件和类加载的人来说,还有一个可用的OSGi包,它位于tika-bundle工件中。还有一个CXF驱动的JAX-RS版本,它通过RESTful接口提供Tika的服务,该服务包含在tika-server工件中。