嵌套Jar与Java Applet

时间:2011-11-02 05:14:50

标签: java applet apache-tika

首先,我已经解决了有关包含applet的jar文件的所有问题。但即使这样,我也有这个'巨大'的问题。

我正在使用java和Apache-Tika Library开发一个应用程序(带有4个罐子,总大小为40 mbs)。应用程序需要计算上传文档中的单词数(doc,docx,odf,pdf和其他一些单词)。这个小程序从Netbeans 6.5或Eclipse IDE运行得非常好,我正在并用它来进行开发。但是当我尝试将其部署到浏览器时,就会出现问题。

问题

初始页面加载非常好。但是当我给出文档的路径并单击Ok(或Count)时,我会收到大量错误消息。 这些都是与外部Apache-Tika库相关的“ Class Not Found Exceptions ”。我认为我已经正确地完成了所有库的包含,因为它不会在applet查看器中运行。

对于HTML,我创建了一个整个Word-Counter应用程序的jar,以及库(4个Apache-Tika Jars)和所有其他必需的文件,并相应地将jar包含在标记中。 我是否需要在HTML文件中提及有关嵌套jar库的任何内容,是否有关于嵌套jar的限制? 任何形式的帮助都会受到高度赞赏。 谢谢你提前了解了民众。

3 个答案:

答案 0 :(得分:3)

听起来你可能正以错误的方式接近这一点。你真的不应该从浏览器Applet进行任何文档分析。而是将文档上传到服务器并在那里进行分析。要求用户下载40MB的罐子作为使用您正在创建的应用程序的任何人的最终解决方案可能是不可接受的。

答案 1 :(得分:2)

  

“未找到类别例外”与外部Apache-Tika库相关。

可以在archive元素的applet属性中列出多个JAR。见W3C on the archive attribute ..

  

此属性为包含将要“预加载”的类和其他资源的归档指定以逗号分隔的 URI列表。

答案 2 :(得分:0)

为什么不在applet jar中包含所有依赖项jar中的所有类?

Tika包含一个可以做到这一点的罐子 - tika-app.jar。您可以运行tika-app而无需任何额外的jar或依赖项,它包含所需的所有内容。

如果你看看tika-app pom,你会看到适当的maven魔法来建造这样一个罐子。否则,要手动完成,只需将所有罐子解压缩到一个目录中,然后重新将其重新装上。