亲自有效---python 调用jar

#-*-coding:utf-8-*-
import jpype
from jpype import *
import os.path

jarpath = os.path.abspath('.')
#这个函数用来获取当前 python 脚本所在的绝对路径
aa=jarpath + '\JpypeDemo.jar'
print(aa)
jvm_path = jpype.getDefaultJVMPath() #获取当前系统JDK的路径
dependency = jarpath+'\dependency'       #jar运行时所要依赖的包,并同时需要将jdk文件(C:\Program Files\Java\jre1.8.0_91\lib\ext)下jar包复制到这个文件
print(jvm_path)
jpype.startJVM(jvm_path,"-ea","-Djava.class.path=%s" %aa,"-Djava.ext.dirs=%s" %dependency) #需要将jdk文件下jar包复制到这个文件下
JDClass = JClass("xxxxxx.law.gateway.util.RsaUtils") #申请一个 Java 类(神奇~)
jd = JDClass
jprint = java.lang.System.out.println #申请 Java 输出类的输出函数
enc = jd.encryptByPublicKey(pubkey,user)         



#关闭 Java 虚拟机,可写可不写,不写会在程序结束时自动关闭
shutdownJVM()
备注:安装python和JDK的位数要一致,安装的Jpype1 的位数还要与电脑的位数一致,也要和python版本号一致。如我是JDK是64,python3.7 64位,电脑win10 64.
就是安装这个类型的
JPype1-0.7.1-cp37-cp37m-win_amd64.whl

posted @ 2020-01-15 19:37  long2020  阅读(696)  评论(1编辑  收藏  举报