本文重点在于如何使用python调用java接口!
1.将java代码打包为jar文件,将打包好的jar文件放在python的同级目录下
idea中java程序打jar包的两种方式(超详细)_idea打jar包-优快云博客
2.安装JPype1库,包名就是JPype1 !1不要省略
pip3 install JPype1
3.python代码
import jpype
# jdk路径
jdkPath = r'E:\IDEA\jdk-11'
# jdk文件下的jvm.dll路径
jvmpath = jdkPath + r'\bin\server\jvm.dll'
# 固定格式
jpype.startJVM(jvmpath,
'-Djava.class.path=./lei.jar')
# 调用主函数 这里的wenjian 是java的包名 lei是java的类文件
JClass = jpype.JClass('wenjian.lei')
JClass.main([])
# 调用lei下的time方法
'''
lei = JClass()
lei.time("开始") # 结果:��ʼʱ��Ϊ:15:33:28.972498,在File Encoding下修改了编码格式为GB2312后输出正常了
'''
4.java代码(我自己练手随便写的)
package wenjian;
import java.time.LocalTime;
public class lei {
public static void fun_1(int a,int b) {
System.out.println(a+b);
}
public static void fun_2(String name) {
System.out.println("我的名字叫" + name);
}
public static void time(String now) {
LocalTime time = LocalTime.now();
System.out.println(now +"时间为:" + time);
}
public static void main(String[] args){
time("开始");
fun_1(1,3);
fun_2("韩某");
time("结束");
}
}
5.不知道什么原因,python的默认编码格式是utf-8,需要将默认编码格式改为GB2312
6.初始结果:
修改后结果: