Hm. Looking at https://github.com/qos-ch/logback/commit/5186d2604b460f I think we need the 'uses' only in the module where we call ServiceLoader.load(), i.e. in wicket-core.
On Fri, Feb 18, 2022 at 11:53 AM Martin Grigorov <mgrigo...@apache.org> wrote: > Hi Jon, > > According to > https://www.oracle.com/corporate/features/understanding-java-9-modules.html > > *provides…with.* A provides…with module directive specifies that a module > provides a service implementation—making the module a *service provider*. > The provides part of the directive specifies an interface or abstract > class listed in a module’s uses directive and the with part of the > directive specifies the name of the service provider class that implements > the interface or extends the abstract class. > > AFAIU it we need to add "uses org.apache.wicket.IInitializer" next to all > "provides org.apache.wicket.IInitializer with x.y.z.SomeImplementation;" > > Please try it and if it fixes the issue then send a PR! > > On Thu, Feb 17, 2022 at 8:16 PM Locke, Jonathan (Luo Shibo) < > jonath...@telenav.com> wrote: > >> >> Does anyone know what this is? Thanks -- Jon >> >> Exception in thread "main" java.util.ServiceConfigurationError: >> org.apache.wicket.IInitializer: module org.apache.wicket.core does not >> declare `uses` >> at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:589) >> at java.base/java.util.ServiceLoader.checkCaller(ServiceLoader.java:575) >> at java.base/java.util.ServiceLoader.<init>(ServiceLoader.java:504) >> at java.base/java.util.ServiceLoader.load(ServiceLoader.java:1687) >> at org.apache.wicket.core@9.6.0 >> /org.apache.wicket.Application.initInitializers(Application.java:556) >> at org.apache.wicket.core@9.6.0 >> /org.apache.wicket.Application.initApplication(Application.java:765) >> at org.apache.wicket.core@9.6.0 >> /org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:441) >> at org.apache.wicket.core@9.6.0 >> /org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:365) >> >>