1

我正在使用 Tika 解析器将我的文件索引到 Solr。我创建了自己的解析器(扩展了 XMLParser)。它使用我自己的 mimetype。我创建了一个 jar 文件,里面看起来像这样:

src
|-main
    |-some_packages
        |-MyParser.java
    |resources
        |-META-INF
            |-services
                |-org.apache.tika.parser.Parser (which contains a line:some_packages.MyParser.java)
        |_org
            |-apache
                |-tika
                    |-mime
                        |-custom-mimetypes.xml 

在 custom-mimetypes 中我放了新的 mimetype 的定义,因为我的 xml 文件有一些特殊的标签。

现在问题出在哪里:我一直在本地机器上安装的 glassfish 上使用 Solr 测试解析和索引。它工作得很好。然后我想将它安装在某个远程服务器上。安装了相同版本的 glassfish (3.1.1)。我复制粘贴了 Solr 应用程序,它是包含所有库的主目录(包括 tika jar 和带有我的自定义解析器的 jar)。不幸的是,它不起作用。将文件发布到 Solr 后,我可以在内容类型字段中看到它检测到我的自定义 mime 类型。但是,如果从未运行过 MyParser 类,则没有假设存在的字段。我得到的唯一字段是来自都柏林核心的字段。我检查了(通过简单地添加一些打印行)Tika 只使用 XMLParser。有没有人遇到过类似的问题?如何处理?

4

1 回答 1

0

问题是我使用 Java 7 来编译我的解析器,但是 Apache Tika 是用 Java 5 编译的......

于 2012-03-29T18:09:49.673 回答