python 调用 java python如何调用java的jar包 Pytho
目录
- 一、安装包
- 二、使用步骤
- 三、代码演示
- 四、自己写一个jar包
- 五、打包步骤
- 六、技巧补充
一、安装包
pip3 install JPype1
二、使用步骤
1、导入jpype模块
2、python要调用的java的jar包路径
3、获取jvm.dll的文件路径
4、使用jpype开启虚拟机
5、加载java类
6、实例化类
7、调用java技巧
8、关闭jvm
三、代码演示
import jpypejar完全包路径jar_path = ‘/Users/qinhaili/Desktop/MathUtil.jar’print(jar_path)获取默认的 JVM 路径jvmPath = jpype.getDefaultJVMPath()启动 JAVA 虚拟机jpype.startJVM(jvmPath,”-ea”,f”-Djava.class.path=jar_path}”)环境测试代码,成功输出说明安装环境成功jpype.java.lang.System.out.println( “hello world!” )获取java类java_class = jpype.JClass(‘MathUtil’)类调用静态技巧(类.技巧名())result1 = java_class.sayHello()print(result1)调用对象技巧(类实例.技巧名())实话java类class_obj = java_class()result2 = class_obj.add(1,2)print(result2)关闭JAVA虚拟机jpype.shutdownJVM()
四、自己写一个jar包
class MathUtil public static String sayHello() return “Hello How are you”; } public MathUtil() } public int add(int a, int b) return a + b; }}
五、打包步骤
1、编译得到.class文件
javac Hello.java
2、创建jar包
jar cf xxxx.jar xxx.class
3、打包必须得有java开发环境哈
六、技巧补充
Python调用Java的jar包方式
其实调用 Java 的 jar 包代码,和其他外部程序一样,可以使用 Python 的subprocess模块或者需要调用 Java 的 API(比如 Jython)来实现。下面是两个示例代码:
使用 subprocess 模块:
import subprocessjava_path = “/usr/bin/java” Java 的路径jar_path = “path/to/your/jar/file.jar” jar 包的路径 要执行的命令cmd = [java_path, “-jar”, jar_path] 执行proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)out, err = proc.communicate() 打印输出和错误print(out.decode(“utf-8”))print(err.decode(“utf-8”))
使用 Jython API:
from java.lang import Runtimejar_path = “path/to/your/jar/file.jar” jar 包的路径 获取当前 JVM 实例jvm = Runtime.getRuntime() 加载 jar 包jvm.load(jar_path) 调用 jar 包中的技巧result = jvm.callMethod(“com.example.YourClass”, “yourMethod”, arg1, arg2) 打印结局print(result)
这里假设你已经安装好了 Jython。关键点在于,这种方式需要在 Jython 中编写代码,而不是 Python,由于 Jython 是一种 Python解释器,它能够解析 Java 代码。
到此这篇关于python怎样调用java的jar包的文章就介绍到这了,更多相关python调用jar包内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!
无论兄弟们可能感兴趣的文章:
- Python实现调用jar或执行java代码的技巧详解
- Python调用Java可执行jar包难题
- Python代码一键转Jar包及Java调用Python新姿势
- python调用java的jar包技巧
- Java实现的执行python脚本工具类示例使用jython.jar
- Python调用JAR包的类和技巧详细指南
- Python调用Jar包的两种方式