I am the person who continues to maintain the J2CL Maven plugin. If you need to 
build a JavaScript application and run it in a JavaScript environment, you can 
look at how this is implemented here 
(https://github.com/apache/incubator-kie-tools/tree/main/packages/serverless-workflow-diagram-editor)
 (this is an application that uses a Jakarta-like CDI framework, along with 
JSON/YAML marshallers).

It looks like the Google team is finishing work on adding support for records, 
so I will be updating the entire stack soon to enable these features

At the moment, GWT is noticeably more stable than J2CL, so I would recommend 
taking another look at it. However, if you really do not want to go that route, 
you could also consider running a WASM application using GraalVM.


> On Dec 27, 2025, at 1:55 PM, Craig Mitchell <[email protected]> wrote:
> 
> Isn't that what <packaging>gwt-lib</packaging> is designed for in GWT? ( 
> https://tbroyer.github.io/gwt-maven-plugin/usage.html )
> 
> Unless you're not running on a Java backend.  So you'd need a npm package 
> created somehow.  Not sure how to do that.
> 
> On Sunday, 28 December 2025 at 8:33:42 am UTC+11 Tim Macpherson wrote:
>> I want to provide client js that is logic only, no UI,  I write it in  java 
>> because the tooling in typescript is not good enough. I need to release this 
>> as pure js, it's that simple 
>> 
>> Yahoo Mail: Search, Organize, Conquer 
>> <https://mail.onelink.me/107872968?pid=nativeplacement&c=US_Acquisition_YMktg_315_SearchOrgConquer_EmailSignature&af_sub1=Acquisition&af_sub2=US_YMktg&af_sub3=&af_sub4=100002039&af_sub5=C01_Email_Static_&af_ios_store_cpp=0c38e4b0-a27e-40f9-a211-f4e2de32ab91&af_android_url=https://play.google.com/store/apps/details?id=com.yahoo.mobile.client.android.mail&listing=search_organize_conquer>
>> On Sat, Dec 27, 2025 at 8:59 PM, Colin Alworth
>> <[email protected] <>> wrote:
>> It still isnt quite clear to me what you're asking for - can you be more 
>> precise?
>> 
>> That is, if you're writing d3 js code, the best way to make that available 
>> to others is JS. Each Java-to-JS compiler first assumes that the next 
>> developer is using Java, but each makes their own assumptions about how to 
>> map JS ideas to Java, so there isn't a one-size-fits-all approach. JsInterop 
>> types at least are mostly the same for both J2CL and GWT - but if you have a 
>> user who doesn't use GWT, they probably also don't use Java in the client at 
>> all?
>> 
>> On Saturday, December 27, 2025 at 1:34:46 PM UTC-6 [email protected] <> 
>> wrote:
>> GWT works for me and I will always be using it in my own stack while it's 
>> maintained, but I need to make some of my d3 js code and client java 
>> surrounding it available for others who don't use GWT. Teavm is maybe best 
>> tool for that.
>> 
>> Yahoo Mail: Search, Organize, Conquer 
>> <https://mail.onelink.me/107872968?pid=nativeplacement&c=US_Acquisition_YMktg_315_SearchOrgConquer_EmailSignature&af_sub1=Acquisition&af_sub2=US_YMktg&af_sub3=&af_sub4=100002039&af_sub5=C01_Email_Static_&af_ios_store_cpp=0c38e4b0-a27e-40f9-a211-f4e2de32ab91&af_android_url=https://play.google.com/store/apps/details?id=com.yahoo.mobile.client.android.mail&listing=search_organize_conquer>
>> On Sat, Dec 27, 2025 at 7:17 PM, Colin Alworth
>> <[email protected] <>> wrote:
>> "Best" is hard to define - what are your requirements?
>> 
>> If GWT doesn't fit your use cases, it seems unlikely that J2CL will - can 
>> you elaborate on what about GWT doesn't work for you? If anything, I've 
>> found J2CL to be more picky than GWT in just about every way - more limited 
>> options for emulation, more requirements for JsInterop, no JSNI/Generators, 
>> smaller ecosystem and prior art for customizing the build (whether using the 
>> maven plugin or the official Bazel build tooling).
>> 
>> It does tend to produce slightly smaller and slightly faster output, and 
>> does offer better integration with compiling plain JS sources in the same 
>> build (with the requirement that this JS must be built to be safe to compile 
>> by closure-compiler in ADVANCED mode).
>> 
>> For a generally bigger set of JRE emulation (and much larger output sizes), 
>> consider TeaVM or CheerpJ - both have their strengths. I don't have a lot of 
>> experience with either, but I do find that for math-heavy apps, TeaVM does a 
>> great job getting even better performance in some cases than GWT or J2CL, 
>> and produces output much more quickly. It tends to do much more poorly on 
>> string heavy (e.g. DOM manipulation). CheerpJ I have almost no experience 
>> with, but excels at supporting nearly any JRE-compatible code, and finding a 
>> way to make it work regardless of whether the browser is a good place to run 
>> it. This is a huge advantage for "it doesn't matter as long as it can run" 
>> cases - more and more it can be possible to run a JS app that is hundreds of 
>> times what would have been acceptable a few years ago.
>> 
>> On Saturday, December 27, 2025 at 12:08:38 PM UTC-6 [email protected] 
>> <> wrote:
>> Can someone advise if it's the best tool for building js code from pure 
>> logic front end java ? I need to enable usage for those not using GWT. Thanks
>> 
>> Yahoo Mail: Search, Organize, Conquer 
>> <https://mail.onelink.me/107872968?pid=nativeplacement&c=US_Acquisition_YMktg_315_SearchOrgConquer_EmailSignature&af_sub1=Acquisition&af_sub2=US_YMktg&af_sub3=&af_sub4=100002039&af_sub5=C01_Email_Static_&af_ios_store_cpp=0c38e4b0-a27e-40f9-a211-f4e2de32ab91&af_android_url=https://play.google.com/store/apps/details?id=com.yahoo.mobile.client.android.mail&listing=search_organize_conquer>
>> 
>> -- 
>> 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 [email protected] <>.
>> 
>> To view this discussion visit 
>> https://groups.google.com/d/msgid/google-web-toolkit/12612394-a3db-4171-b11d-2b2dea7706c7n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/google-web-toolkit/12612394-a3db-4171-b11d-2b2dea7706c7n%40googlegroups.com?utm_medium=email&utm_source=footer>.
>> 
>> -- 
>> 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 [email protected] <>.
>> To view this discussion visit
>> https://groups.google.com/d/msgid/google-web-toolkit/e9abe6cd-84f4-4cb6-9a24-335775ac9115n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/google-web-toolkit/e9abe6cd-84f4-4cb6-9a24-335775ac9115n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
> 
> 
> -- 
> 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 [email protected] 
> <mailto:[email protected]>.
> To view this discussion visit 
> https://groups.google.com/d/msgid/google-web-toolkit/08fdb818-510e-4674-9e67-e48f96959cf0n%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/google-web-toolkit/08fdb818-510e-4674-9e67-e48f96959cf0n%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
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 [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/google-web-toolkit/88ED6B60-E3C5-4E97-B82B-7B057F0AADE1%40gmail.com.

Reply via email to