Создайте java класс в python и отправьте его обратно java - PullRequest
1 голос
/ 21 января 2020

У меня есть класс в java:

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. Так возможно ли создать экземпляр класса java из python и после отправить его обратно в java с помощью py4j? Кто-нибудь может показать, как это сделать, если это возможно? Или есть другая альтернатива?

1 Ответ

2 голосов
/ 21 января 2020

Я не думаю, что это возможно, если кто-то не знает об утилите "bridge" между Java и Python.

Однако вы можете сделать это:

  1. Создайте JSON в сценарии Python в структуре, совпадающей с MyClass
  2. Получите его в вашем Java методе и десериализуйте JSON в экземпляр MyClass, используя Джексон или какой-нибудь JSON инструмент.

Ваша следующая проблема - это связь между вами Java процессом и Python процессом. Для этого посмотрите, помогает ли этот вопрос StackOverflow: Передача данных из Java процесса в python скрипт

...