我使用以下代码片段来调用jar文件中的函数。但我无法连接班级。
Development Env:
Python: Python27,32bit jpype Version(JPype-0.5.4.2.win32-py2.7.exe)
Java: jre1.8.0_60,32bit.
Java代码:
public class Samp {
public Samp() {
super();
}
public String sayHi()
{
return("Hello");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println ("Hello world");
}
public static int add(int a, int b)
{
return(a+b);
}
}
C:\ temp \ tem \ samp.jar Jar文件在该目录中显示。我正在使用下面的代码连接jar文件。
python代码:
>>import jpype
>>jpype.startJVM(jpype.getDefaultJVMPath(), '-ea', '- Djava.class.path=c:\\temp\\tem')
>>A = jpype.JClass("Samp")
>>a = Samp()
>>print a.sayHi()
>>jpype.shutdownJVM()
通过运行上面的代码,我收到了以下错误
Traceback(最近一次调用最后一次):文件“”,第1行,in 文件“C:\ Python27 \ lib \ site-packages \ jpype_jclass.py”,行 54,在JClass中 raise _RUNTIMEEXCEPTION.PYEXC(“未找到类%s”%name)jpype._jexception.ExceptionPyRaisable:java.lang.Exception:Class Samp 找不到
答案 0 :(得分:0)
在你要做的第四行
>>> a = A()
然后
>>> print a.sayHi()