sdedic commented on issue #6004: URL: https://github.com/apache/netbeans/issues/6004#issuecomment-1572030019
OK, the culprit is ModuleManager:2199. I've consulted that with @jtulach and we come to conclusion that the Package dependency was originally meant as a test for system package. Otherwise it would require, at the point of this getProblems() test, to bring up classloaders for the entire subtree rooted at the tested module: this is both barely possible (as dependencies are not deep-discovered yet, entire `simulateEnable` uses depth-first traversal, and terrible performance. If the check is disabled at this point (as it was earlier), module system might accept a module (which will be later rejected for missing required package) - and will load *all its dependencies*. While the broken module will not load in the final stage, all its dependencies will, recursively, even though they are not needed in the system. Those dependencies may register services, `-Provides` declarations etc, further polluting the module system. In addition, NB prints an error on startup that a module cannot be enabled bcs. of missing dependency - and not only that: the failed module actually breaks the startup, if there's > 1 such module (one fallback is attempted). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- 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
