#-*-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. 基于ACR的镜像仓库管理,云计算技术与应用实验报告
  2. 受控组件和不受控组件的区别
  3. 参考文献中的字母含义
  4. Python 中函数的 收集参数 机制
  5. 理解ResNet结构与TensorFlow代码分析
  6. 【邀请函】2021钉钉宜搭·线上沙龙,邀您云上相见!
  7. 重物码垛搬运机器人_节卡机器人:5G下的智慧物流——柔性生产物流系统
  8. python的基本功能_二.Python的基本数据类型及常用功能
  9. 从Applet中读取Cookie Access Cookies from a Java Applet
  10. tab切换webuploader失效的解决方法
  11. 023、JVM实战总结:一步一图:那JVM老年代垃圾回收器CMS工作时,内部又干了些啥?
  12. table或者列表中超出的字用省略号代替的方法(支持IE6)
  13. [转]mysql_connect() 不支持 请检查 mysql 模块是否正确加载 解决
  14. 字典树Trie练习 HihoCoder 1014
  15. 利用CSkin组件设计漂亮的WinForm登录界面
  16. copula 重现期 matlab,合肥市干旱识别及基于Copula的特征值重现期分析
  17. python代码混淆
  18. InVEST模型(工具)下载及安装(更新中)
  19. 安卓一键新机_知道华为手机变慢的罪魁祸首吗?用这四招两年旧机秒变新机
  20. 《数据结构》— 数据结构图文解析系列

热门文章

  1. LeetCode 1305. 两棵二叉搜索树中的所有元素(二叉树迭代器)
  2. LeetCode 1171. 从链表中删去总和值为零的连续节点(哈希表)
  3. LeetCode 289. 生命游戏(位运算)
  4. java第九章编写一个能够产生_第九章java教程.ppt
  5. unity game和scene效果不一样_不同的真石漆装饰效果也是不一样的
  6. mysql监控平台怎么做_MySQL监控平台的构建方法
  7. python 经典100例(1-20)
  8. java执行程序默认多线程吗_Java多线程 执行程序(1)
  9. YUI事件体系之Y.EventTarget
  10. 蚂蚁三面题目(java开发岗):Java锁机制+JVM+线程池+事务+中间件