在Python中调用Java接口可以通过多种方式实现,以下是使用JPype库的一个简单示例:
1. 安装JPype库:
pip install JPype1
// Calculator.java
public interface Calculator {
int add(int a, int b);
}
// CalculatorImpl.java
public class CalculatorImpl implements Calculator {
public int add(int a, int b) {
return a + b;
}
}
使用JDK的`javac`命令编译上述Java代码:
javac Calculator.java CalculatorImpl.java
jar cvf calculator.jar Calculator.class CalculatorImpl.class
3. 在Python中调用Java接口:
import jpype
import os
设置Java类路径
jarpath = os.path.join(os.path.abspath('.'), 'calculator.jar')
jpype.startJVM(jpype.getDefaultJVMPath(), '-ea', '-Djava.class.path=%s' % jarpath)
导入Java接口
JavaInterface = jpype.JClass('com.example.Calculator')
创建Java接口的实例
java_interface = JavaInterface()
调用Java接口的方法
result = java_interface.add(1, 2)
print(f"1 + 2 = {result}")
关闭Java虚拟机
jpype.shutdownJVM()
请确保Java程序已经启动并开放了Gateway Server,或者使用Py4J时,Java程序需要编译并打包成JAR文件。
以上步骤展示了如何使用JPype库在Python中调用Java接口。