#-*-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的路径

print(jvm_path)

# startJVM("/usr/local/java/jdk1.8.0_181/jre/lib/amd64/server/libjvm.so","-ea","-Djava.class.path=%s" % (jarpath + ‘/JpypeDemo.jar‘))

# #这个 startJVM 函数作用是加载 Java 虚拟机,其第一个参数必须是你的 Java 的 jdk 的安装位置,每个人的安装位置不一样,

# 我的地址就是上面加粗的那一段(注!!!有的教程上说可以直接通过 getDefaultJVMPath() 函数获取 Java 地址,

# 不建议用!不建议用!不建议用!因为这个函数获得的地址很有可能是电脑自带的 oracle 版的 Java,

# 并非我们自己安装的 Java,这样由于环境变量的问题会导致报错!);  第二个参数意译不明,反正加上就对了 ;

# 第三个参数是你打包好的 jar 包所在的绝对路径,可以看到我将 JpypeDemo.jar 和前面所得到的当前目录的路径结合起来。

jpype.startJVM(jvm_path,"-ea","-Djava.class.path=%s" % aa)

JDClass = JClass("demo1.JpypeDemo") #申请一个 Java 类(神奇~)

jd = JDClass

jprint = java.lang.System.out.println #申请 Java 输出类的输出函数

jprint( jd.sayHello(" waw ") ) #调用该类中的 sayHello 函数,并用 Java 输出函数打印 Java 返回值

jprint( str(jd.calc(2,4))) #调用该类中的求和函数,并用 Java 输出函数打印 Java 返回值 要打印的为字符类型的值

#关闭 Java 虚拟机,可写可不写,不写会在程序结束时自动关闭

shutdownJVM()

原文:https://www.cnblogs.com/longyi2020/p/12198438.html

python调用jar 性能_亲自有效---python 调用jar相关推荐

  1. python虚拟cpu性能_如何使用python找出CPU数量

    I want to know the number of CPUs on the local machine using Python. The result should be user/real ...

  2. c++调用python接口作用是_利用Boost::Python实现C++调用python接口

    利用Boost::Python实现C++调用python接口 2019年11月06日 阅读数:7 这篇文章主要向大家介绍利用Boost::Python实现C++调用python接口,主要内容包括基础应 ...

  3. python def函数调用内容_基本的python,def函数和文本菜单的调用

    我刚刚浏览了你的代码,虽然你现在可能已经弄明白我想了一些建议可能会帮助你更多地了解python. 首先,样式对于python来说非常重要,它是一种空白语言.该语言还有一些很棒的功能可以缩小代码量,这再 ...

  4. python哪个方向简单_现在学Python,哪个方向最简单?哪个方向最吃香 ?

    " 我想学Python,但是学完Python后都能干啥 ?" " 现在学Python,哪个方向最简单?哪个方向最吃香?" " -- " 相信 ...

  5. python模块下载过程_常用的python模块及安装方法

    bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUti ...

  6. 做python的心得体会_实训python的心得体会

    如何学习Python的一些总结 C++.Java乃至C#都可以看做是同一类型的语言:C++还算灵活,但纷繁复杂的语法使得生产效率低下,Java提高了生产效率,却损失了灵活性;C#算是在生产效率和灵活性 ...

  7. python归一化 增大差异_简学Python第六章__class面向对象编程与异常处理

    Python第六章__class面向对象编程与异常处理 欢迎加入Linux_Python学习群 群号:478616847 目录: 面向对象的程序设计 类和对象 封装 继承与派生 多态与多态性 特性pr ...

  8. python绝技 pdf 中文_虫术Python绝技 PDF 完整版

    给大家带来的一篇关于Python爬虫相关的电子书资源,介绍了关于Python.Python爬虫方面的内容,本书是由电子工业出版社出版,格式为PDF,资源大小230.8 MB,梁睿坤编写,目前豆瓣.亚马 ...

  9. python定义数组大小_请问在python数组要先定义长度吗?

    视情况而定 若数组是追加一个元素的可以不用定义长度: 若初始化一个列表然后要修改其中的值的话,就要定义长度了. 例: 拓展资料 设计定位 Python的设计哲学是"优雅".&quo ...

最新文章

  1. 使用zerotier让异地设备组局域网
  2. pyhton3 模拟打开网页
  3. 积分背后的数字货币,你真的会玩吗?
  4. Android studio导入第三方库的各种方法和eclipse的导入方式对比
  5. 献给网页开发者的20款Firefox插件
  6. Hawq超过最大允许连接数
  7. 织梦autoindex应用 dedecms循环中判断第几条数据
  8. iPad Air 2完全评测:可怕的三核CPU、六核GPU
  9. Android Studio 4.0 发布
  10. 支撑位和压力位怎么看是什么意思?
  11. IT学习网站,各大主流网站
  12. 数字漫画行业繁花似锦,国漫扎根本土文化“向外生长”?
  13. 拼多多代发商如何一件代发自动下单?
  14. 使用gensim框架及Word2Vec词向量模型获取相似词
  15. Py遇到Bad key “text.kerning_factor“ on line 4 in
  16. Oculus检测到你的NVIDIA驱动问题,解决办法
  17. 51Nod-1000A+B
  18. 维基解密曝光CIA新路由器网络攻击方式
  19. neo4j | 下载地址
  20. scratch模拟流星划过夜空的动画/少儿编程scratch教研教案课件课程素材脚本

热门文章

  1. LeetCode 345. 反转字符串中的元音字母
  2. 程序员面试金典 - 面试题 16.15. 珠玑妙算(map计数)
  3. 初始化环境配置:CentOS 7.4x64 系统安装及基础配置
  4. Requests: 让 HTTP 服务人类
  5. python中的range与list函数
  6. R语言第六讲 数据的统计分析
  7. 在K40小破卡训练50层BERT Large的宝藏trick
  8. 直通BAT必考题系列:深入详解JVM内存模型与JVM参数详细配置
  9. 论文浅尝 | GraphIE:基于图的信息抽取框架
  10. MYSQL返回指定时间间隔函数DATE_SUB和TO_DAYS详解