Loading modules at runtime

Piotr Chmielewski piotr.ch.dev at gmail.com
Wed Jan 11 14:54:24 UTC 2017

For one of my projects, I decided to create "plugin" system to load 
class at runtime from JAR files. Currently, I load each plugin using 

With arrival of JDK9, is there any plans for loading modules at runtime 
(or is available already for testing in build snapshots)? For example 
instead of:

String pluginPath = "CPU_Monitor.jar";

URL pluginUrl = new URL(pluginPath);

URL[] urls = {pluginUrl};

URLClassLoader urlClassLoader = new URLClassLoader(urls);

Class<?> pluginClass = 

Would be possible to use something like this:

Module pluginModule = ModuleManager.getModule("com.example.cpu.Monitoring");

Class<?> pluginClass = 

I guess that something like this could be implemented as library outside 
JDK, but such API could be great addition to Jigsaw.

More information about the jigsaw-dev mailing list