Jython是从python调用Java的一种方法-实际上,您可以在 Java JVM中运行Python 。这使您可以访问几乎所有在JVM上运行的Java,但是有很多限制。
由于Jython在JVM中运行python,因此您几乎可以使用任何Java库。但是,使用的Python受到严格限制:只能使用Python 2.7,并且只能导入纯Python库(使用C编译的Python库无法在Jython上运行)。
对于使用Jython的项目的示例:Processing.py在Jython上运行,以便访问Processing Java API及其Java库生态系统。
https://github.com/jdf/processing.py 请注意,Jython 2 及其文档非常老,并且开发人员不确定Jython 3是否/何时发布。
https://github.com/jython/jython3 py4j py4j是一种不同的方法-它是“ Python与Java之间的桥梁”,并允许本机python代码访问在单独的JVM中运行的单独的Java。但是请注意,python和Java代码必须并行运行并通过网关接口进行通信。这是在单独运行的进程之间进行的通信-您不是从Python或在Python内部生成JVM。
例如:在JVM端,将myObject传递给新的GatewayServer(myObject); 在Python端,创建一个JavaGateway()Python对象,并使用它与Java myObject通信。