在 python 中实例化一个 java class 并将其发送回 java
Instantiate a java class in python and send it back to java
我在 java 中有一个 class:
public class MyClass{
public String a=null;
public String b=null;
public String c=null;
public String d=null;
public static String testMyClass() {
//my method instruction using the attributes a,b,c and d
}
问题是 MyClass
属性必须从 python 接收才能使用方法 testMyClass
。那么是否可以使用 py4j 从 python 实例化 java class 并将其发送回 java ?
如果可能的话,任何人都可以展示如何制作它?或者有其他选择?
我认为这是不可能的,除非有人知道 Java 和 Python 之间的 "bridge" 实用程序。
但是,您可以这样做:
- 在 Python 脚本中创建一个 JSON,其结构与
MyClass
的结构相匹配
- 在您的 Java 方法中接收它并使用 Jackson 或某些 JSON 工具将 JSON 反序列化为
MyClass
的实例。
您的下一个问题将是 Java 进程与 Python 进程之间的通信。为此,看看这个 Whosebug 问题是否有帮助:
我在 java 中有一个 class:
public class MyClass{
public String a=null;
public String b=null;
public String c=null;
public String d=null;
public static String testMyClass() {
//my method instruction using the attributes a,b,c and d
}
问题是 MyClass
属性必须从 python 接收才能使用方法 testMyClass
。那么是否可以使用 py4j 从 python 实例化 java class 并将其发送回 java ?
如果可能的话,任何人都可以展示如何制作它?或者有其他选择?
我认为这是不可能的,除非有人知道 Java 和 Python 之间的 "bridge" 实用程序。
但是,您可以这样做:
- 在 Python 脚本中创建一个 JSON,其结构与
MyClass
的结构相匹配
- 在您的 Java 方法中接收它并使用 Jackson 或某些 JSON 工具将 JSON 反序列化为
MyClass
的实例。
您的下一个问题将是 Java 进程与 Python 进程之间的通信。为此,看看这个 Whosebug 问题是否有帮助: