Compile error with SmartGWT

65 views
Skip to first unread message

Neil Aggarwal

unread,
Dec 9, 2024, 9:48:36 PM (13 days ago) Dec 9
to google-we...@googlegroups.com

Hey everyone:

 

I am trying to migrate my project to SmartGWT.

 

When I compile it, I get this message:

[INFO] Compiling module com._3dmathpuzzles.play.Play

[INFO]    Ignored 1 unit with compilation errors in first pass.

[INFO] Compile with -strict or with -logLevel set to DEBUG or WARN to see all errors.

 

Where do I put in the -strict or -logLevel to see the error?

 

I am using Eclipse version 2024-09 with the Maven plugin.

 

Thank you,

 Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

 

Neil Aggarwal

unread,
Dec 9, 2024, 10:03:46 PM (13 days ago) Dec 9
to google-we...@googlegroups.com

I figured out I need to put this directive in my configuration
for the GWT maven plugin:

                                                                           <logLevel>WARN</logLevel>

 

But, now I get a huge amount of output.

 

I am going to try to work through it, but if anyone can offer some guidance,

it will be helpful.

 

Thank you,

 Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

 

Neil Aggarwal

unread,
Dec 9, 2024, 10:11:50 PM (13 days ago) Dec 9
to google-we...@googlegroups.com

I set this configuration parameter:

                                                 <failOnError>true</failOnError>

 

And I get this warning:

 

[INFO]    [WARN] Warnings in 'jar:file:/C:/Users/neil/.m2/repository/com/isomorphic/smartgwt/lgpl/smartgwt-lgpl/13.1-p20241207/smartgwt-lgpl-13.1-p20241207.jar!/com/smartgwt/client/widgets/tab/TabSet.java'

[INFO]       [WARN] Line 2133: Referencing deprecated class 'com.smartgwt.client.widgets.tab.events.AddTabClickedEvent'

 

That is in the smartgwt library so I assume it will work ok.

Colin Alworth

unread,
Dec 9, 2024, 10:15:51 PM (13 days ago) Dec 9
to GWT Users
I'm surprised to see that it says that a warning is considered to be a compilation error, and trigger that notice. Can you confirm that with failOnError set, you no longer get the "Ignored 1 unit with compilation errors in first pass."? If so, we might have a (minor) bug in how we handle JDT errors/warnings.

Note that it is generally a good idea to have that flag enabled - compilation errors in unused files will require that incremental builds in super dev mode must rebuild some unchanged types to see if the errors have been resolved with the changes, which will negatively impact performance.

Colin Alworth

unread,
Dec 9, 2024, 10:24:48 PM (13 days ago) Dec 9
to GWT Users
On a closer look, I think the text of that message has a typo - the specific message you are seeing should indicate that there were compiler warnings, not errors that were detected in the first pass.


Neil Aggarwal

unread,
Dec 9, 2024, 10:26:46 PM (13 days ago) Dec 9
to google-we...@googlegroups.com

Here is the full output:

 

[INFO]  gwt:1.1.0:compile (default-cli) 3DMathPuzzlesWeb ---

[INFO] Compiling module com._3dmathpuzzles.play.Play

[INFO]    [WARN] Warnings in 'jar:file:/C:/Users/neil/.m2/repository/com/isomorphic/smartgwt/lgpl/smartgwt-lgpl/13.1-p20241207/smartgwt-lgpl-13.1-p20241207.jar!/com/smartgwt/client/widgets/tab/TabSet.java'

[INFO]       [WARN] Line 2133: Referencing deprecated class 'com.smartgwt.client.widgets.tab.events.AddTabClickedEvent'

[INFO]    Compiling 2 permutations

[INFO]       Compiling permutation 0...

[INFO]       Compiling permutation 1...

[INFO]    Compile of permutations succeeded

[INFO]    Compilation succeeded -- 31.908s

[INFO] Linking into C:\OneDrive\Dev\3DMathPuzzlesWeb\html\play\com._3dmathpuzzles.play.Play

[INFO]    Link succeeded

[INFO]    Linking succeeded -- 1.574s

 

Thank you,

 Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

 

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/8ff1b3e2-bd79-4b6d-a484-a70dc43ef22dn%40googlegroups.com.

Neil Aggarwal

unread,
Dec 9, 2024, 10:29:37 PM (13 days ago) Dec 9
to google-we...@googlegroups.com

I am glad my bungling around found something useful.

Craig Mitchell

unread,
Dec 10, 2024, 1:23:16 AM (13 days ago) Dec 10
to GWT Users
> I am trying to migrate my project to SmartGWT.

Out of curiosity, didn't SmartGWT stop being updated about 10 years ago?

Neil Aggarwal

unread,
Dec 10, 2024, 1:42:14 AM (13 days ago) Dec 10
to google-we...@googlegroups.com

>Out of curiosity, didn't SmartGWT stop being updated about 10 years ago?

According to this page:

https://smartclient.com/product/download.jsp

 

Version 13.1 was released last month.

Colin Alworth

unread,
Dec 10, 2024, 9:44:55 AM (13 days ago) Dec 10
to GWT Users
Unfortunately, I only get 502 proxy errors from that site, as well as the smartclient.com homepage.

The blog is still up, https://blog.smartclient.com, and there is a link there to the wiki at http://wiki.smartclient.com/, but all smartgwt content I can see has gone at least 10 years since an update. The blog post for 13.0 does mention SmartGWT, but the 13.1 post at https://blog.smartclient.com/announcing-smartclient-13-1/ is missing any mention of GWT.

The SmartClient and SmartGWT showcases seem to still be running (e.g. https://smartclient.com/smartgwt/showcase/, running 13.1 as you said), but the SmartGWT one is still using GWT 2.10.0.

Have they changed their policy of ignoring jsinterop and sticking with only JSNI? While I don't believe that an exodus to J2CL is imminent, there are at least a few teams that have migrated their GWT projects to use J2CL instead of the GWT compiler.

Neil Aggarwal

unread,
Dec 10, 2024, 11:20:27 AM (13 days ago) Dec 10
to google-we...@googlegroups.com

>Unfortunately, I only get 502 proxy errors from that site, as well as the smartclient.com homepage.

 

They seem to have fixed it.  The page is loading fine now.

 

> While I don't believe that an exodus to J2CL is imminent, there are at least a few teams that have migrated their GWT projects to use J2CL instead of the GWT compiler.

 

Now I am confused.  Reading on the Internet, it seems J2CL is meant to replace GWT, but
all the discussions I can find are years old.  Given that I am starting a new addition to
my existing code which uses Maven, should I be learning J2CL or GWT?

 

If it helps, to answer the question, my goal is to write an interactive web-based
version of my current printable puzzles so a user may solve them online.

Colin Alworth

unread,
Dec 10, 2024, 12:12:49 PM (13 days ago) Dec 10
to GWT Users
If you write Java that is safe for GWT, use annotation processors to generate code as needed, and use jsinterop over JSNI, your codebase will be largely or totally compatible with either GWT or J2CL. Most of gwt-user (except i18n and widgets) have been rewritten already to work with no JSNI and are tested in j2cl. J2CL is maintained by Google, but can be difficult to get started with, especially for existing applications. For new projects there are simple maven archetypes that out of the box will give you smaller and faster applications (on the order or 5-10% each). However, at this time J2CL can only compile new Java syntax if used from Bazel (the maven plugin cannot support this yet), and last I checked J2CL has no support for Java >11 language features (though they are planning on bringing that soon to Java 21, see https://github.com/google/j2cl/discussions/258). 

J2CL can also compile Java to wasm. At this time, this only works in Bazel, not maven.

For these reasons, J2CL isn't for everyone at this time, but I can't advocate for deliberately making it hard to move to it in the future.

***

I18n proved to be somewhat difficult, and the existing Widget types depend pretty heavily on i18n. On the other hand, new projects are typically not using Widgets - they were made for a different time in browser history, when dom memory leaks were a going concern and dom implementations were horribly inconsistent. The API is fairly restrictive in an attempt to make it impossible to reintroduce leaks by mistake. New component UI toolkits (Elemento, DnComponents, DominoUI to pick three examples) instead just directly use dom elements, making them easier to configure, extend, embed.

Neil Aggarwal

unread,
Dec 10, 2024, 2:18:57 PM (12 days ago) Dec 10
to google-we...@googlegroups.com

Thank you for the background info.

I will continue with GWT for now.

 

Thank you,

 Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

 

From: google-we...@googlegroups.com <google-we...@googlegroups.com> On Behalf Of Colin Alworth
Sent: Tuesday, December 10, 2024 11:13 AM
To: GWT Users <google-we...@googlegroups.com>
Subject: Re: Compile error with SmartGWT

 

If you write Java that is safe for GWT, use annotation processors to generate code as needed, and use jsinterop over JSNI, your codebase will be largely or totally compatible with either GWT or J2CL. Most of gwt-user (except i18n and widgets) have been rewritten already to work with no JSNI and are tested in j2cl. J2CL is maintained by Google, but can be difficult to get started with, especially for existing applications. For new projects there are simple maven archetypes that out of the box will give you smaller and faster applications (on the order or 5-10% each). However, at this time J2CL can only compile new Java syntax if used from Bazel (the maven plugin cannot support this yet), and last I checked J2CL has no support for Java >11 language features (though they are planning on bringing that soon to Java 21, see https://github.com/google/j2cl/discussions/258). 

--

You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.

Reply all
Reply to author
Forward
0 new messages