문제

I want to run java class in my python code and I use the tool JPype. I have a java method with a boolean argument. It works in java code but when I call it in python, I get the error message:

RuntimeError: No matching overloads found. at src/native/common/jp_method.cpp:121

I even use the jpype wrapper JBoolean, but it still fails. For example, the code in java is:

item.myMethod(true);

and I have tried to convert it in python as:

item.myMethod(1)
item.myMethod(True)
item.myMethod(jpype.JBoolean(True))
item.myMethod(jpype.JBoolean(1))

but all of above get the same error message. Could anyone help me to convert the boolean argument from python to java?? thank you!!

올바른 솔루션이 없습니다

다른 팁

Is the argument of your Java method defined as a boolean or a java.lang.Boolean?

If it is boolean, then all the possibilities you have tried should work (if not there might be something wrong with the way you import the Class in your Python code). However, if it's a java.lang.Boolean, then you have to call your method as such:

item.myMethod(jpype.java.lang.Boolean(True))
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top