2011-07-15 8 views
2

JPypeを使用してPythonからApache Pdfboxを呼び出そうとしていますが、実際にクラスをインポートするのにはいくつかの困難があります。クラスパスのjarファイルからそれらを読み取ることができないようです。以下で、この時点で jpype + pdfboxクラスが見つかりません

from jpype import java, startJVM, shutdownJVM, JPackage, JClass, getDefaultJVMPath, nio 
import sys, os, codecs 

pdfbox_lib = "lib/pdfbox-1.6.0.jar" 
classpath = '-Djava.class.path=' + pdfbox_lib + os.pathsep + '.' 

startJVM(getDefaultJVMPath(), '-Xmx512m', classpath) 

stream = java.io.FileInputStream(java.io.File("test.pdf")) 

pdfparser = JPackage('org.apache.pdfbox.pdfparser') 
parser = JClass('org.apache.pdfbox.pdfparser.PDFParser') 

、スクリプトエラーアウト:

java.lang.ExceptionPyRaisable: java.lang.Exception: Class org.apache.pdfbox.pdfparser.PDFParser not found 

私は、Python 2.7とLinux上で実行しているよ、とあった場合、私は(JPypeのインストールでは何も問題はありません知っていますストリーム宣言はエラーになります)。また、クラスパスステートメントとJPackage/JClassステートメントのさまざまな置換を試しましたが、何も問題にはならないようです。どんな提案も大歓迎です!

答えて

2

私はそれを理解しました。クラスパスには、さらに3つのjarファイル(fontbox-x.x.x.jarjempbox-x.x.x.jar、およびcommons-logging.jar)を追加する必要があります。

関連する問題