java.lang.NoClassDefFoundError: java/applet/Applet on modern JDKs (Java 26+) due to legacy Applet references
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- Medio día
- Aptitud para principiantes
- 35/100
Línea de trabajo
The stack trace points to BasePosRobotIT.setUpBase at line 83, which is in the reporter's own project, not in AssertJ Swing's sources. First, grep the repository for java.applet and JApplet references and run the test suite on JDK 26 to confirm where the missing class is loaded. If the reference only exists in the reporter's code, the fix belongs there, and the issue should be narrowed. Done when the cause is identified and either a library change or a clear out-of-scope conclusion is recorded.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
When running UI automation tests built on top of AssertJ Swing under modern JDK environments, specifically JDK 26 or newer, the test suite crashes during initialization with a java.lang.NoClassDefFoundError targeting java/applet/Applet.
The Applet API has been completely removed from the standard JDK classpath in Java 26 under [JEP 504: Remove the Applet API].
Since AssertJ Swing still carries legacy references, internal fixtures, or utilities inherited from the original FEST Swing codebase that depend on java.applet.Applet, the framework fails immediately upon class loading.
Stack Trace
java.lang.NoClassDefFoundError: java/applet/Applet
at io.github.kriolos.opos.automation.BasePosRobotIT.setUpBase(BasePosRobotIT.java:83)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1612)
Caused by: java.lang.ClassNotFoundException: java.applet.Applet
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:580)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:502)
Environment
- Java Version: JDK 26+ (JEP 504 compliant)
- OS: Agnostic
- Library: AssertJ Swing (Core automation engine)
Expected Behavior
AssertJ Swing should be executable on modern standard runtimes (JDK 26+) without requiring or resolving deprecated and now-deleted packages like java.applet.*.
Suggested Fix
- Completely remove or refactor any code paths, modules, or internal test runners (such as legacy Applet viewers/fixtures) that reference
java.applet.Appletorjavax.swing.JApplet. - Fully decouple standard desktop
JFramecomponents from any Applet-based class loading mechanisms to restore compatibility with current and future JDK ecosystems.
- Lenguaje dominante
- Java
- Estrellas
- 121
- Forks
- 52
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 assertj/assertj-swing
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
assertj/assertj-swing#279 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
assertj/assertj-swing#278 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
assertj/assertj-swing#276 · 1 comentario ·
-
Update unit test to avoid deprecated `ExpectedException.none()` by using `Assert.assertThrows()`Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
assertj/assertj-swing#275 ·
-
how to test when headless?Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
assertj/assertj-swing#277 · 1 comentario ·
Todos los issues de assertj/assertj-swing
Issues similares
-
needs-area-label
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
quelea-projection/Quelea#711 ·
-
bug pdd
Dificultad 2/5 Menos de una hora Aptitud para principiantes 67/100
objectionary/eo#9450 ·
Los mantenedores suelen responder en 1 día
-
[EC2] DescribeAvailabilityZones should return real AWS error for unknown zone namePosiblemente ocupada @omatheusmesmo la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
area: core good first issue type: enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100