2013-03-26 53 views
0

我想爲使用帶有Tomcat的Java servlet的書籍製作Web應用程序。如果可能,我想從項目Calibre中導入一些代碼(讀取*.epub*.pdf,,*.mobi*.txt文件)到我的項目中。如何將.py導入java

口徑來源:http://bazaar.launchpad.net/~kovid/calibre/trunk/files來自此鏈接的一些來源我想加入到我的項目中。

應用Calibre是一個用Python和C編寫的開源代碼。我想要的是導入用python編寫的源文件(.py),它允許我讀取標準的epub,pdf,txt ...在我用java開發的項目中servlet來查看和轉換書籍。我使用Eclipse(Java EE),我不知道要導入這些源以及如何製作的步驟。它必須將這些源導出到jar?

回答

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應用程序中的函數從您的web應用程序調用 啓動。它似乎已準備好根據http://calibre-ebook.com/abouthttp://www.techrepublic.com/blog/opensource/how-to-use-calibre-to-access-your-ebook-collection-online/2275作爲web應用程序 運行。
0

我看其他兩種方式:

  1. 你可以用Jython工作(但我有沒有經驗,不知道這是否解決您的問題)

  2. 你可以爲Java編寫一個JNI模塊,然後啓動並使用Python解釋器。

+0

是啊,你可以。但兩者都可能是一個壞主意。 – 2013-03-26 15:47:01

0

Python和java是不同的語言。你不能讓java代碼調用python代碼,或者不經過某種轉換。我覺得你最好的選擇是要麼

  1. 尋找一個Java庫,你想要做什麼,或
  2. 用Python語言編寫你的網站;也有許多優秀的圖書館,這些

當然有辦法從Java調用Python,但它會是相當困難將它們應用到一些大口徑,它也使用一些C.

+0

對於轉換格式,它可能只是一個需要被調用的腳本,我期望。 – 2013-03-27 14:42:36