Класс JPype не найденJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Класс JPype не найден

Сообщение Anonymous »

JPype — потрясающий проект, поскольку я могу создавать экземпляры JVM непосредственно из Python.

К сожалению, я застрял на первом этапе маленькими шажками.

У меня есть исходный код A.java (

Код: Выделить всё

located in C:\tmp folder
[/b]):

Код: Выделить всё

class A {
public A() {
super();
}
public String sayHi() {
return("Hello");
}
}
Который был скомпилирован в класс с использованием: javac A.java

Таким образом, A .class находится в [/b].

У меня есть следующий исходный код Python:

Код: Выделить всё

import os
import jpype
jpype.startJVM(jpype.getDefaultJVMPath(), '-ea', '-Djava.class.path=c:\\tmp')
A = jpype.JClass("A")
a = A()
print a.sayHi()
jpype.shutdownJVM()
Когда я запускаю его, я получаю следующую ошибку:

Код: Выделить всё

C:\tmp>jpype_test.py
Traceback (most recent call last):
File "C:\tmp\jpype_test.py", line 10, in 
A = jpype.JClass("A")
File "C:\Python27\lib\site-packages\jpype\_jclass.py", line 54, in JClass
raise _RUNTIMEEXCEPTION.PYEXC("Class %s not found" % name)
jpype._jexception.ExceptionPyRaisable: java.lang.Exception: Class A not found
Поскольку я не могу найти класс A, возможно, проблема связана с CLASSPATH, но я не могу понять, что делаю неправильно.

Есть какие-нибудь подсказки?

РЕДАКТИРОВАНИЕ 1:

Проблема остается. Но добавлю к моему вопросу: если я использую собственные библиотеки Java, например: java.util, код выполняется БЕЗ ошибок. Например, работает следующий код:

Код: Выделить всё

import jpype
jpype.startJVM(jpype.getDefaultJVMPath())
util = jpype.JPackage("java.util")
al = util.ArrayList()
al.add(1)
al.add(2)
print al.size()
jpype.shutdownJVM()
И возвращает 2.

РЕДАКТИРОВАТЬ 2:

Проблема решена, см. ответ ниже...

Подробнее здесь: https://stackoverflow.com/questions/234 ... -not-found
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»