为了解析html到字符串我使用tika解析器,但我遇到一些问题,如jdeveloper中的库和错误

时间:2011-03-29 07:19:49

标签: java html apache apache-tika

首先,我必须下载tika-bundle-0.9.jar,但我找不到它。 Seconly,我写了这些

 try {
        URL itemURL = new URL("");
        DataInputStream daHTMLfromDaItem = new DataInputStream(itemURL.openStream());
        Tika tika = new Tika();
        Metadata metadata = new Metadata();
        Reader reader = tika.parse(daHTMLfromDaItem, metadata);

          String s=reader.toString();
          //System.out.print(s);


    } catch (Exception e) {
        e.printStackTrace();
    }

错误

Error(5,24): cannot access class org.apache.tika.Tika; class file has wrong version 49.0, should be 45.3 or 46.0 or 47.0 or 48.0

Error(6,33): cannot access class org.apache.tika.metadata.Metadata; class file has wrong version 49.0, should be 45.3 or 46.0 or 47.0 or 48.0

Error(15,13): class Tika not found in class mypackage.TikaParsing

Error(15,29): class Tika not found in class mypackage.TikaParsing

Error(16,13): class Metadata not found in class mypackage.TikaParsing

Error(16,37): class Metadata not found in class mypackage.TikaParsing

另外,我不得不说除了tika-bundle-0.9.jar之外我添加了所有必需的库。由于tika-bundle-0.9.jar会出现一些问题,我怎么能找到tika-bundle-0.9.jar?我找不到解决方案。

由于

2 个答案:

答案 0 :(得分:1)

tika库已使用Java 1.5编译,但您尝试在Java 1.4环境中运行它们。这就是第一条错误消息告诉我们的内容。版本49.0由Java 1.5,Java 1.4.x版本48.0生成

使用Java 1.5+运行您的应用程序或尝试查找与Java 1.4.2兼容的旧版tika

答案 1 :(得分:0)

Tika Bundle可从Maven购买。如果您正在使用maven,请添加以下内容:

<dependencies>
 <dependency>
   <groupId>org.apache.tika</groupId>
   <artifactId>tika-bundle</artifactId>
   <version>0.9</version>
   <scope>provided</scope>
 </dependency>
<dependencies>

如果您不使用maven,请手动从附近的maven仓库中抓取它,例如http://repo1.maven.org/maven2/org/apache/tika/tika-bundle/(每个版本都在其自己的子目录中)