0

我想使用带有 Tomcat 的 java servlet 为书籍制作一个 Web 应用程序。如果可能的话,我想从项目 Calibre中导入一些代码(读取*.epub*.pdf*.doc*.mobi和文件)到我的项目中。*.txt

口径来源:http ://bazaar.launchpad.net/~kovid/calibre/trunk/files这个链接的一些来源我想在我的项目中工作。

Application Calibre 是一个用 Python 和 C 编写的开源代码。我想要的是导入用 python ( .py) 编写的源代码,这样我就可以在我用 java servlet 开发的项目中读取标准的 epub、pdf、txt 来查看和转换书籍。我使用 Eclipse(Java EE),我不知道导入这些源的步骤以及如何制作。必须将这些源导出到 jar 中吗?

4

3 回答 3

1

Python 与 Java 不兼容,因为 Java 不能运行 python 代码。

但是,有几个选择。

  1. 使用系统调用直接从您的 java 应用程序运行 python 代码。我在这些情况下使用ProcessBuilder,您可以查看 http://javaevangelist.blogspot.com/2011/12/java-tip-of-day-using-processbuilder-to.html
  2. 将 Calibre 设置为 Web 应用程序,并将转换函数从您的 Web 应用程序调用到您启动的 calibre Web 应用程序。根据http://calibre-ebook.com/abouthttp://www.techrepublic.com/blog/opensource/how-to-use-calibre-to-access-your ,它似乎已准备好作为 Web 应用程序运行-ebook-collection-online/2275
于 2013-03-26T15:36:10.753 回答
0

我看到了另外两种方式:

  1. 您可以与Jython合作(但我没有这方面的经验,也不知道它是否能解决您的问题)

  2. 您可以为 Java 编写一个 JNI 模块,该模块依次启动并使用 Python 解释器。

于 2013-03-26T15:40:18.233 回答
0

Python 和 java 是不同的语言。在没有某种转换的情况下,你不能让 java 代码调用 python 代码,或者反过来。我认为您最好的选择是

  1. 寻找可以满足您需求的 Java 库,或者
  2. 用python写你的网站;这些有很多优秀的库

当然有一些方法可以从 java 调用 python,但是将它们应用到大口径的东西上会相当困难,它也使用一些 C。

于 2013-03-26T15:42:58.000 回答