gwt-plugins / gwt-plugins/gwt-eclipse-plugin

Wrong default source level causes compilation problems (eg : with record objects)

Abierto
#520 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Java
Estrellas
117
Forks
49
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

I spent hours to solve a problem and wanted to report it here to help other people that will be concerned.
Thanks to chat gpt and Claude, i found the solution, i dont know how i would be able to find it before.

I don't know what is the default value for -sourceLevel program argument in the GWT eclipse plugin CodeServer run configuration, or in the GWT > compile option with right click on the project, but for some reason the plugin was not using the Java JDK version of the project, or the version of the workspace, and that was resulting to that kind of errors for a record type object (not a class) that was on my understanding managed since GWT SDK 2.12.0 :

`org.yp.client.model.Currency; did you forget to inherit a required module? Checked 2 dependencies for errors. Tracing compile failure path for type 'org.yp.client.view.dialog.linkpay.LinkPayEditor' Errors in 'file:/C:/DEV/GIT_FILES/WEB_NEPTING/admin_wa/src/main/java/org/yp/client/view/dialog/linkpay/LinkPayEditor.java' Line 126: No source code is available for type org.yp.client.model.Currency; did you forget to inherit a required module? Checked 1`

thanks to debug logs added with GWT plugin options in compiler i was able to understand better that it was a java compiler version issue that was not supporting record types :
Line 5: Syntax error on token "record", @ expected Line 11:

The compilation was fine with maven, but not with this GWT eclipse plugin, so that's why i managed to understand the issue, the plugin uses his own Java compiler or source level and not the one from the Eclipse Workspace or for the current project.

So the question is, why the plugin is not using the compiler version of the project, or why there is no clear options to set it ?
Regards

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Start with the GWT Eclipse plugin CodeServer run configuration and the GWT compile option, focusing on how the sourceLevel argument is selected. Reproduce the record compilation failure with the reported debug logs and compare it with the Maven build. Done means the plugin uses the project compiler level or exposes a clear option to set it, with the record example compiling successfully.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
build-system, tooling
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Activo
Claridad
Necesita aclaración
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.