python是用java开发的_在Python中实际使用Java类/ JAR?

我花了大量时间寻找这个问题,并探索了许多解决方案.

最后,经过测试:

Pyjnius:无法在Windows中安装.

Py4J:可以在Windows上安装,但是使用Gateway有点繁琐.

JPype:5分钟内安装了Python 3,可以加载50Mo JAR,没有任何问题.

????好消息是语法已与Python语法完全合并…

????https://github.com/tcalmant/jpype-py3

只是想知道,是否有人开发了具有大型JAR的Python(即在生产服务器上运行)的Java实际包装应用程序?

最佳答案

为了节省很多人的时间,我发布了用于JPype的模块,可以很好地加载JAR.

import jpype as jp; import numpy as np; import os as os

jarpath= r"D:\zjavajar\\"

mavenurl= r"http://mvnrepository.com/artifact/"

# StartJVM (add "-Xmx" option with 1024M if crash due to not enough memory )

def importJAR(path1="", path2="", path3="", path4=""):

classpath = path1

if path2 != "": classpath = os.pathsep.join((classpath, path2))

if path3 != "": classpath = os.pathsep.join((classpath, path3))

if path4 != "": classpath = os.pathsep.join((classpath, path4))

jp.startJVM(jp.getJVMPath(),"-ea", "-Djava.class.path=%s" % classpath)

def showLoadedClass(): #Code to see the JAR loaded.

classloader = jp.java.lang.ClassLoader.getSystemClassLoader(); vv= [];

for x in classloader.getURLs(): vv.append(x.toString());

return vv

def loadSingleton(class1): single= jp.JClass(class1); return Single.getInstance()

def java_print(x): jp.java.lang.System.out.println(x) #Print in Java Console

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值