Overriding constructors for classes inheriting from Java
@timfel ya está trabajando en esto.
Desde el 20/1/2025.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
As of the latest version (23.1.0), GraalPy does not support overriding constructors for Python classes that inherit from Java.
The example below throws an error when we try to create a custom Exception wrapper in Python:
package my.pack;
import org.graalvm.polyglot.Value;
import org.graalvm.polyglot.Context;
public class Main {
static Context context = Context.newBuilder().allowAllAccess(true).build();
static Value clz;
public static void main(String[] args) {
context.eval("python", """
import java
class ParseException(java.lang.Exception):
def __init__(self, message):
self.__super__(message)
""");
clz = context.getBindings("python").getMember("ParseException");
Value obj = clz.newInstance("Hello from Java");
}
}
Result
// error
Exception in thread "main" TypeError: ParseException.__init__() missing 1 required positional argument: 'message'
at org.graalvm.sdk/org.graalvm.polyglot.Value.newInstance(Value.java:933)
at my.pack.Main.main(Main.java:18)
- Lenguaje dominante
- Python
- Estrellas
- 1.6k
- Forks
- 155
- Merge medio
- 8 h 20 min
- PR fusionados (30 d)
- 43
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de oracle/graalpython
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
oracle/graalpython#1105 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
oracle/graalpython#1102 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 74/100
oracle/graalpython#1133 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
oracle/graalpython#1112 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
oracle/graalpython#1111 ·
Todos los issues de oracle/graalpython
Issues similares
-
bug confirmed issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
open-webui/open-webui#30750 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100