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

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

Aperta
#520 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
117
Fork
49
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
build-system, tooling
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Attiva
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.