1

いくつかの Java ライブラリ (具体的には Axis2 Web サービス) をロードしようとしている Python アプリケーションがあります。PyDev Project Source Folders を介して Eclipse に必要な jar を追加すると、すべて正常に動作するように見えます。ただし、に追加することで実行時にこれを実行できるようにしたいのですsys.pathが、アプリケーションが機能しないようです。

どちらの場合も、jar を問題なくロードできますが、結果が異なるには何かが異なる必要があります。sys.path私の質問は、実行時にjar を追加することと、jython インタープリターにsys.path.append()渡すことの間に違いはありますか?-D

4

1 に答える 1

0

この問題は、コマンド ラインから手動で Jython を起動するのではなく、Eclipse が Jython インタープリターを起動する方法の違いであることが判明しました。Eclipse 実行構成ペインには、アプリケーションの実行に使用されるコマンドを表示する方法があります。私は次のように見えました:

 /usr/lib/jvm/java-7-openjdk-i386/bin/java 
   -classpath /usr/local/lib/jython2.5.3/jython.jar:... 
   org.python.util.jython 
   -Dpython.path=... 
   myScript.py

(注:読みやすくするために改行を追加しました)

したがって、Jython は Java から起動され、Python パスだけでなく、Java クラスパスにパスを供給する必要があったようです。

于 2012-11-19T18:56:57.483 に答える