Python的JAVA胶水——jpype

jpype模块,让我们可以调用java代码编译的jar包或者java语句

如果用python脚本去执行java包,还是很使用和迅速的

首先我们要有java 运行环境,我的系统是ubuntu16.04

安装Java的最简单的选择是使用与Ubuntu一起打包的版本。 具体来说,这将安装OpenJDK 8,最新和推荐的版本。

首先,更新包索引。

sudo apt-get update

接下来,安装Java。 具体来说,此命令将安装Java运行时环境(JRE)。

sudo apt-get install default-jre

还有另一个默认的Java安装,称为JDK(Java开发工具包)。 JDK通常只需要如果你要编译Java程序,或者如果使用Java的软件特别需要它。

JDK确实包含JRE,因此如果安装JDK而不是JRE,除了较大的文件大小,则没有缺点。

您可以使用以下命令安装JDK:

sudo apt-get install default-jdk

Python也要先安装好jpype 模块 

sudo pip jpype1 #注意后面有一个1,参考官网

举例子:

import os
from jpype import *
host = "192.168.1.158"
port = 9100
# 获取jar包的路径
jarpath=os.path.join(os.path.abspath("."),"tscsdk.jar")
# getDefaultJVMPath()  --获取系统的jvm路径
startJVM(getDefaultJVMPath(), "-ea","-Djava.class.path=%s" % jarpath)
# 使用java字节码中定义的类
FormatScript = JClass('com.example.tscdll.TscWifiActivity')
# 实例化这个类
t = FormatScript()
# 调用类方法
so = t()
signature = so.openport(host, port)
print(signature)
# 关闭jvm
shutdownJVM()

项目目录:

调用java语句:

import jpype

jvmPath = jpype.getDefaultJVMPath() # 获得系统的jvm路径
jpype.startJVM(jvm=jvmPath) # 启动虚拟机
# 执行JAVA代码
jpype.java.lang.System.out.println("hello world")
jpype.shutdownJVM() # 关闭jvm

截图

参考博文:

https://www.cnblogs.com/fanghao/p/7745356.html

 

https://blog.csdn.net/qq_42735170/article/details/81126713 

https://blog.csdn.net/u014615615/article/details/83109654

原文地址:https://www.cnblogs.com/zzy-9318/p/10316024.html