Possibly at first by just creating automatic/open modules and later properly define module boundaries.
Service definitions (generated by org.kohsuke.metainf-services) would need to be duplicated in module-info.java so that both non-modularised and modulalised apps can use them.