there is this [older] JPF (
java plugin framework) project here
http://jpf.sourceforge.net/
They define simple interfaces and sample implementations for loading plugins on startup.
Or, if you wanted to do a full custom thing, invent a convention like a plugins/ folder and any .jar file found in that folder is a plugin that is to be loaded on application startup.
You could use the MANIFEST.MF file inside the jar file, or invent your own descriptor, to contain the meta information, such as plugin name, description, version, depends on ohter plugins, so your boot strap method to discover plugins on application startup could use this to try to load them in an order that makes sense, if there are dependencies between plugins.
as far as finding the code from the pluginzs, its likely not to hard to use a URLClassLoader, that works to target classes contained inside the plugin jar files.