Pochodzę ze świata Java i jestem całkowicie nowy w Jython.PyDev: Moduły Jython i klasy Java w tym samym projekcie
Czy można utworzyć projekt w środowisku Eclipse z klasami Jython i Java w tym samym projekcie? Próbowałem to zrobić, pisząc prostą klasę Java i używając jej w module Jython - i wszystko poszło dobrze podczas kodowania. Ale gdy próbuję uruchomić projekt pojawia się:
Traceback (most recent call last):
File "/home/bahman/Work/Jython/TestJython/src/com/bahmanm/Main.py", line 1, in <module>
from com.bahmanm import Greeter
ImportError: cannot import name Greeter
Klasa Java jest: pakiet com.bahmanm;
public class Greeter {
private String msg;
public Greeter() {
msg = "Hello, ";
}
public void greet(String name) {
System.out.println(msg + name);
}
}
I moduł Jython jest dość prosta:
from com.bahmanm import Greeter
g = Greeter()
g.greet("Bahman")
będę wdzięczny za wszelkie pomysły/podpowiedzi.
Czy istnieje sposób użycia względnych ścieżek z tymi definicjami bibliotek zewnętrznych? Miałem podobny problem z BahmanM, ale ponieważ moje klasy Javy i Pythona były w różnych projektach, musiałem użyć ścieżki od samego root'a, co nie czyni go bardzo przenośnym (tj. Za pomocą/project/trunk/javaproject/src działałby dobrze z/project/trunk/jythonproject/scripts, ale kończyłoby się to niepowodzeniem po sprawdzeniu jako/project/branches/mybranch/javaproject/src). Próbowałem już szukać zmiennej, która definiuje katalog główny obszaru roboczego, ale jak dotąd dokumentacja mnie zaskoczyła. –
To wydaje się nie działać. Mam prosty plik .class w katalogu głównym pakietu (tj. W katalogu o nazwie "root"). Niezależnie od katalogu, który staram się dołączyć do mojej PythonPath dla projektu, otrzymuję "nierozstrzygnięty import". Kiedy mówisz "dodaj swój kod Javy" ... czy to w rzeczywistości oznacza .jar zamiast katalogu? –