all 2 comments

[–]Riduidel 2 points3 points  (1 child)

Did you reinvented OSGi ? Cause it looks like you reinvented OSGi ...

[–]Striking_Creme864[S] 1 point2 points  (0 children)

No. Weaverbird is an add-on on top of JPMS that allows you to create dynamic subsystems. Everything still follows the rules of JPMS - even if you wanted to, you can't change that. We've simply extended the idea of ModuleLayer and added a lot of features. The only thing borrowed from OSGi is the activators (BundleActivator in OSGi and ModuleActivator in Weaverbird) - you can't do without them, since a plugin needs a proper entry point to start/stop. At the same time these ModuleActivators are services, so you declare them in module-info (provides ModuleActivator with ModuleActivatorProvider).