Thomas, Thanks for the writeup. This clears the things a bit.
I had already understood the reasons you want to get rid of jetty. What I hadn't understood was the term DevMode was not referring to the legacy plugin based mode. Hm... Let's remove the double negatives. I believed that DevMode was referring to the legacy plugin mode (port 8888). To my defense the documentation needs a bit of love. The old devmode is very prominent in google searches. It is under Docs/Coding Basics/Compile & Debug http://www.gwtproject.org/doc/latest/DevGuideCompilingAndDebugging.html and the http://www.gwtproject.org/articles/superdevmode.html mentions -launcherDir in soup of options and text. It needs some formatting there. Furthermore it mentions the bookmarklet as the suggested way of compiling. So AFAIKT assuming I don't use servlets if jetty is removed I will run the codeserver locally (localhost) and we will export its output (nocache.js ) with the server that I choose such as jetty, apache, tomcat nginx whatever. The capability to debug live production sites with dev_mode_on.js (with the bookmarklet or other similar means) will be unaffected because (now I get it) it has nothing to do with the codeserver. dev_mode_on.js overrides/rewrites from where we are loading the nocache.js script. Sorry for the trouble and thanks for the explanations. Vassilis On Fri, Apr 16, 2021 at 6:07 PM Thomas Broyer <[email protected]> wrote: > > > On Fri, Apr 16, 2021 at 3:12 PM Vassilis Virvilis <[email protected]> > wrote: > >> That's great news to hear. Is there any doc about this? >> > > It's been there since 2.7, *checks notes* more than 6 years ago. > Either pass `-launcherDir` to CodeServer, or use DevMode, which defaults > to using that (legacy DevMode has to be explicitly reenabled through > -nosuperDevMode) > See http://www.gwtproject.org/articles/superdevmode.html > > >> How does it know when to switch between codeserver and production code? >> > > A stub nocache.js file is generated (overwriting your production one if > you use the same dir) that will trigger a recompile on the CodeServer and > load the generated script, similar to clicking the bookmarklet. > > What we're talking about here is more or less about removing DevMode "as > we know it" that directly serves a web app following the "exploded WAR" > layout, and only keeping the CodeServer; or possibly serve static files > from DevMode but no longer host servlets et al. > The issue here is conflicts between Jetty/DevMode and the project's > server-side dependencies in the classpath (due to a project with mixed > client and server code, and the fact that we have a custom > WebAppClassLoader that loads from both the WEB-INF/classes+WEB-INF/lib and > the classpath), and even conflicts between Jetty and the WEB-INF/lib, and > of course issues with the version of ASM from GWT used by Jetty to scan the > webapp classloader when it encounters module-info.class files. > > -- > Thomas Broyer > /tɔ.ma.bʁwa.je/ <http://xn--nna.ma.xn--bwa-xxb.je/> > > -- > You received this message because you are subscribed to the Google Groups > "GWT Contributors" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEMoy2bfbATDMstqUsmS88Zg0N8w1bYatdgwZrOYtJtbPQ%40mail.gmail.com > <https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEMoy2bfbATDMstqUsmS88Zg0N8w1bYatdgwZrOYtJtbPQ%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- Vassilis Virvilis -- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAKbOjEx9wwO6m%2BuO4xf0NJPU7ZUJ%2Bj95qjcHG1EkkmWibV8VuQ%40mail.gmail.com.
