Python使用jpype模块调用jar包的方法

  介绍

这篇文章主要讲解了Python使用jpype模块调用jar包的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。


能够让Python代码方便地调用Java代码的工具


安装和其它模块没区别,但是注意模块名是jpype1,后面有个1

pip安装jpype1


笔者在标题里面备注了所使用的操作系统,因为windows操作系统的一个配置有点区别,待会遇到再讲解吧。

<强> 3.1 jpype模块测试

进口jpype

# getDefaultJVMPath获取默认的JVM路径
jvm_path=jpype.getDefaultJVMPath ()
# startJVM()启动Java虚拟机
jpype.startJVM (jvm_path & # 39; ea # 39;, convertStrings=False)
#利用jpype调用输出语句
jpype.java.lang.System.out.println(& # 39;成功# 39;)
# shutdownJVM()关闭Java虚拟机
jpype.shutdownJVM ()

在上面代码中,如果你成功输出你好,说明环境安装配置成功了。

其中jpype.startJVM()的定义是

startJVM (JVM, * args)

参数1:JVM,描述的是系统中JVM。dll文件所在的路径,可以通过调用jpype.getDefaultJVMPath()得到默认的JVM路径。

参数2:参数,为可选参数,会被JPype直接传递给JVM作为Java虚拟机的启动参数。此处适合所有合法的JVM启动参数,例

如:

常用为ea启动断言机制,-Djava.class.path调用的jar包路径,-Djava.ext.dirs调用jar包的依赖包目录等

<强> 3.2 JPype模块调用jar包

第一步:编写Java的一个类,用eclipse等工具编写,代码如下:

包com.newdream;//简单的一个java类
  公开课Calc {
  int num1;
  int num2;
  int公共Calc (int n1、n2) {
  这一点。num1=n1;
  这一点。num2=n2;
  }
  
  公共int add () {
  返回。num1 + this.num2;
  }
  
  公共int子(){
  返回。num1 - this.num2;
  }
  
  }

第二步:通过在eclipse中右击该类,点击出口导出为jar包格式

第三步:把jar包放到python项目下后,编写代码如下即可调用:

进口jpype
  
  jvm_path=jpype.getDefaultJVMPath ()
  jpype.startJVM (jvm_path
  & # 39;ea # 39;
  & # 39;-Djava.class.path=% & # 39; % & # 39;。/libs/Calc.jar& # 39;
  convertStrings=False)
  jclass=jpype.JClass (& # 39; com.newdream.Calc& # 39;) #加载类
  calc=jclass(10、20) #传入所需参数
  值=https://www.yisu.com/zixun/calc.add() #调用类中添加的方法
  打印(值)
  jpype.shutdownJVM() #关闭JAVA虚拟机

以上即可完成调用jar包。

看完上述内容,是不是对Python使用jpype模块调用jar包的方法有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。

Python使用jpype模块调用jar包的方法