You have two choices.
Use OSGi. It's designed for plugins, and has some very nice features for loading/unloading services, handling cross-service dependencies, etc. On the down side, it does mean that you'll have to pre-compile your plugins and wrap them in a jar file along with a valid OSGi manifest.
Use ScalaScriptEngine (or something equivalent). It seems to already handle all of your requirements :)