开发者社区> auqbllxiu> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Python:jpype模块调用Java函数

简介: Python:jpype模块调用Java函数
+关注继续查看

简介:

JPype is a Python module to provide full access to Java from within Python

Jpype是一个Python模块,用于从Python内部提供对Java的完全访问。


github:https://github.com/jpype-project/jpype/

文档:https://jpype.readthedocs.io/en/latest/index.html


安装

pip install JPype1

1、调用java内置函数

from jpype import *

startJVM(getDefaultJVMPath(), "-ea", convertStrings=False)

java.lang.System.out.println("hello world")

shutdownJVM()

2、调用用户自定义java类

Demo.java

public class Demo{
public int add(int a, int b){
return a + b;
}

public static void main(String[] args) {
Demo demo = new Demo();
System.out.println(demo.add(1, 1));
}
}

编译测试

$ javac Demo.java 
$ java Demo
2

通过python调用java类方法

# -- coding: utf-8 --

import jpype


jpype.startJVM(convertStrings=False)

Demo = jpype.JClass('Demo')
demo = Demo()

print(demo.add(1, 1))
# 2

jpype.shutdownJVM()

备注:两文件放同一目录下

            </div>

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Java和Python覆盖/重写函数的比较
Java和Python覆盖/重写函数的比较
0 0
历届真题 小朋友崇拜圈【第九届】【省赛】【C组】——【C++】【C】【Java】【Python】四种语言解法
历届真题 小朋友崇拜圈【第九届】【省赛】【C组】——【C++】【C】【Java】【Python】四种语言解法
0 0
蓝桥杯官网 试题 PREV-106 历届真题 修改数组【第十届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
蓝桥杯官网 试题 PREV-106 历届真题 修改数组【第十届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
0 0
蓝桥杯官网 试题 PREV-278 历届真题 双向排序【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
蓝桥杯官网 试题 PREV-278 历届真题 双向排序【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
0 0
蓝桥杯官网 试题 PREV-281 历届真题 时间显示【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
蓝桥杯官网 试题 PREV-281 历届真题 时间显示【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
0 0
蓝桥杯官网 试题 PREV-284 历届真题 杨辉三角形【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
蓝桥杯官网 试题 PREV-284 历届真题 杨辉三角形【第十二届】【省赛】【研究生组】【C++】【C】【Java】【Python】四种解法
0 0
浅谈C、Java与Python之间的小差异
C、Java、Python之间的小差异。变量是容器还是标签?Python的for循环为什么不一样?Python为什么不能用i++自增?C语言为什么比较快?Java的JVM是干什么的?C、Java、Python有什么区别,又有什么相似点。..................
0 0
一文速学-Python联通调用JAVA的桥梁PyJnius库详解
一文速学-Python联通调用JAVA的桥梁PyJnius库详解
0 0
Java之调用Python代码
  对于一个数据分析方面的工作者来说,最熟悉的语言无疑就是Python了。对于软件开发者而言,Java又是极其重要的工具。那么,一个很自然的问题就是,我们能够在Java中调用Python代码吗?   想要在Java中调用Python代码,有以下两个办法: 直接通过Runtime进行调用 调用Jython 在Java中如果需要调用第三方程序,可以直接通过Runtime实现,这也是最直接最粗暴的做法,粒度更加粗糙,效率较高,需要安装Python软件。
1791 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
JAVA 应用排查全景图
立即下载
Java工程师必读手册
立即下载
Java应用提速(速度与激情)
立即下载