Java 如何在Tika中正确配置AutoDetectPasser?

Java 如何在Tika中正确配置AutoDetectPasser?,java,apache-tika,Java,Apache Tika,我使用Tika从不同类型的文件中提取文本。所以我使用“AutoDetectParser”解析器,但它的注册表看起来是空的。我有下面的代码,它返回一个空列表(第三行和第四行) 我应该如何正确配置AutoDetectParser,使其能够调用正确的解析器?将注释升级为答案-通常不需要!只要您在运行时拥有Tika Core和Tika解析器JAR,以及它们所需的依赖项,那么缺省值将自动检测并自动加载它们 如果由于某种原因,您在运行时丢失了一些JAR,或者您一直在忙于重新打包Tika并丢失了一些服务文件,

我使用Tika从不同类型的文件中提取文本。所以我使用“AutoDetectParser”解析器,但它的注册表看起来是空的。我有下面的代码,它返回一个空列表(第三行和第四行)


我应该如何正确配置AutoDetectParser,使其能够调用正确的解析器?

将注释升级为答案-通常不需要!只要您在运行时拥有Tika Core和Tika解析器JAR,以及它们所需的依赖项,那么缺省值将自动检测并自动加载它们

如果由于某种原因,您在运行时丢失了一些JAR,或者您一直在忙于重新打包Tika并丢失了一些服务文件,那么您将需要按照上的说明进行操作,尤其是在


(如果你想做一些非标准的事情,比如排除某些解析器,强制某些解析器,或者让解析器处理非标准mime类型,那么你需要一个定制的Tika配置。通常你需要一个
Tika Config.xml
文件,请参阅以了解你能做什么)

这通常是由于忘记在运行时类路径中包含
tika解析器
jar以及依赖项而导致的。您是否绝对确定您的运行时类路径上有这些JAR并且可读?您是否尝试过检查您安装的解析器以及其他解析器?谢谢。问题是服务文件丢失了。
 Parser parser = new AutoDetectParser();
 ParseContext con = new ParseContext();
 System.out.println(parser.getSupportedTypes(con)));
 System.out.println(" parsers "+parser.getParsers());