Java-способ сделать то, что вы хотите, использовать механизм ServiceLoader .
Также многие люди сворачивают свои собственные, имея файл в известном местоположении пути к методу (например, /META-INF/services/myplugin.properties), а затем используя ClassLoader.getResources () , чтобы перечислять все файлы с этим именем из всех банок. Это позволяет каждой банке экспортировать своих собственных поставщиков, и вы можете создавать их путем отражения с помощью Class.forName ()