python 调 java(胶水就是胶水)
java门外汉用python调java,
一、安装java环境(linux)
1.首先要去下载好JDK,Java SE 8的官方网址是http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2 tar -zxvf jdk-8u102-linux-x64.tar.gz
3 然后我们来新建一个目录,并将解压好的文件移动过去
mkdir /usr/java
mv ./jdk1.8.0_102 /usr/java
4 先用vim打开/etc/profile文件
vim /etc/profile
5 在文件最后加入
JAVA_HOME=/usr/java/jdk1.8.0_102
export JRE_HOME=/usr/java/jdk1.8.0_102/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
6.使配置生效: source /etc/profile
7 查看java版本
java -version
二安装python的相关安装包
# pip install JPype1
依赖:
yum install -y wget gcc gcc-c++ python-devel mysql-devel bzip2 python-pip
三、生成.class文件
javac -encoding utf-8 DESedeService.java
四、调用
# 根据.java文件中明确的目录结构创建一致的目录结构,并把.java文件放入到指定位置
# 在.java文件所在目录下执行 javac -encoding utf-8 xxx.java 生成.class文件
jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=/data/monitor/src")
DESedeService = jpype.JClass('com.DESedeService')
service_ = DESedeService()
# 通过service_ 调用java里相应接口功能即可
python 调 java(胶水就是胶水)的更多相关文章
- Python的JAVA胶水——jpype
Python的JAVA胶水--jpype python可以作为一门胶水语言使用,可以用其它语言的优势来弥补自身如性能方面的不足,jpype就是在Python中使用jvm的第三方库 文档在这里 安装 s ...
- python 调用java脚本的加密(没试过,先记录在此)
http://lemfix.com/topics/344 前言 自动化测试应用越来越多了,尤其是接口自动化测试. 在接口测试数据传递方面,很多公司都会选择对请求数据进行加密处理. 而目前为主,大部分公 ...
- 比Python、Java更快的 Go 语言,能否称霸江湖?
关注之后加星标,江湖要事早知道 文章来源:jb51.net 有一种语言堪称比语言排行榜前五热门选手的Python.Java更快,它就是GO语言. Go于2009年11月正式宣布推出,成为开放源代码 ...
- 用C语音编写python的扩展模块,也就是python调c库
用C语音编写python的扩展模块,也就是python调c库 1.用C语言扩展Python的功能: http://www.ibm.com/developerworks/cn/linux/l-pyt ...
- Golang、Php、Python、Java基于Thrift0.9.1实现跨语言调用
目录: 一.什么是Thrift? 1) Thrift内部框架一瞥 2) 支持的数据传输格式.数据传输方式和服务模型 3) Thrift IDL 二.Thrift的官方网站在哪里? 三.在哪里下载?需要 ...
- paip.判断文件是否存在uapi python php java c#
paip.判断文件是否存在uapi python php java c# ==========uapi file_exists exists() 面向对象风格: File.Exists 作者: 老哇 ...
- paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结
paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结 ====总结: 数据绑定下拉框,Uapi 1.最好的是默认绑定..Map(k ...
- MongoDB的账户与权限管理及在Python与Java中的登陆
本文主要介绍了MongoDB的账户新建,权限管理(简单的),以及在Python,Java和默认客户端中的登陆. 默认的MongoDB是没有账户权限管理的,也就是说,不需要密码即可登陆,即可拥有读写的权 ...
- php--php调java接口验签
<?php namespace Fmall_cloud\Model; use Think\Model; class DealJavaModel extends Model { /** * @ti ...
随机推荐
- JMX类型监控
zabbix服务器配置 zabbix_server.conf: JavaGateway=10.42.239.219 #JavaGateway的IP JavaGatewayPort=10052 #Jav ...
- flutter报错:NoSuchMethodError: The method '>' was called on null.
写了个list,发现出不来,报错 flutter: Another exception was thrown: RenderBox was not laid out: _RenderScrollSem ...
- python find和index的区别
如果找不到目标元素,index会报错,find会返回-1 >>> s="hello world" >>> s.find("llo&qu ...
- avalon结合原生js tab切换
<div class="fishqc-tap"> <div ms-class="[@codePic!=''&&@codeInfo!='' ...
- 你未必知道的49个CSS知识点
作者:老姚,<JS正则迷你书>的作者 https://github.com/qdlaoyao/css-gif 本文的每一条,都是我曾经发过的掘金沸点,其中有很多条超过了百赞(窃喜).鉴于时 ...
- python中requests里.text和.content方法的区别
requests对象的get和post方法都会返回一个Response对象,这个对象里面存的是服务器返回的所有信息,包括响应头,响应状态码等.其中返回的网页部分会存在.content和.text两个对 ...
- load、loads和 dump、dumps的区别
相同点 load 和loads 都是实现“反序列化” 区别 1.loadsloads针对内存对象loads: 将 字符串 转换为 字典 # 这是一个字符串'{"b": 2, &qu ...
- openwrt共享打印机需要安装哪几个文件
opkg updateopkg install luci-app-p910ndopkg install kmod-usb-printer
- SQL Server 2012 无人值守安装
方法1,通过指定条个參数安装 setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=<validpid> /F ...
- WebSocket——SuperWebSocket实现服务端和客户端
WebSocket——SuperWebSocket实现服务端和客户端具体实现如下: 注:本作者是基于vs2019 enterprise版本,所有项目均为.Net Framwork4.7版本(因为Web ...