Hi,

yes, can reproduce this and debugged it:

FlatLaf uses java.util.ServiceLoader.load() (in FlatLaf.getDefaults()) to load a service from the "FlatLaf Look and Feel" module, which adds NetBeans specific UI defaults.

ServiceLoader.load() uses the context class loader of the current thread to locate the service. The current thread is "AWT-EventQueue-0" when FlatLaf is initialized, independent of whether splash screen is shown or not.

Loading service works with splash screen because at this time the AWT thread context class loader is ModuleManager$SystemClassLoader, which finds the service in the module.

But with --nosplash, the AWT thread context class loader is MainImpl$BootClassLoader, which does not find the service because it does not know modules.

So why is the AWT thread context class loader not yet set when using --nosplash?

Any ideas?

Karl


On 18.08.2020 16:11, Patrik Karlström wrote:
Starting a platform application, the IDE included, with the --nosplash
argument makes the application look a bit off, true for both FlatLaF Dark &
Light.

From what I can tell, this is only visible with FlatLaf.

Can you reproduce this?
If so, I'll go ahead and register in jira.

/Patrik


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists



Reply via email to