4

JythonInterprete で jEdit を実行しており、JavaTest.jar という .jar ファイルがあります。

JavaTest には、printerCount メソッドを持つ SampleJavaClass というクラスがあります。

私の .py ファイルから、やりたいこと:

from javatest import SampleJavaClass

class SampleClass(SampleJavaClass):
 def pymain(self):
  SampleJavaClass.printerCount(4)

Java コード:

package javatest;


public class SampleJavaClass {


    public static void printerCount(int i){
        for(int j=0; j< i; j++){
            System.out.println("hello world");
        }
    }
(etc...)

JythonInterpreter では、[Edit Jython Path] をクリックして .jar ファイルを追加し、再度インタープリターを実行しようとしましたが、それでも表示されます。ImportError: cannot import name SampleJavaClass

4

1 に答える 1

2

jEdit が使用する Java クラスパスに JavaTest.jar を追加する必要があります。Jython パスは、Python モジュールの場所を Jython に伝えるために使用され、Java クラスパスは、Java jar の場所を JVM に伝えるために使用されます。Jython で javatest.SampleJavaClass にアクセスするには、まず JVM がそれを見つけられる必要があります。その後、Jython インタープリターで使用できるようになり、コードが実行されるはずです。

私は jEdit で JVM クラスパスを設定する方法に精通していませんが、答えを保持している可能性のあるこの wiki ページを見つけました。

于 2010-05-26T17:51:14.147 に答える