The following page lists the runtime dependencies based on the components. This is reflected in the pom file since many are listed as optional (e.g. commons-jexl). However, if you want to use commons-configuration in an OSGi container, those become required because the corresponding packages are listed in the manifest's Import-Package section. They do not have the "resolution:=optional" qualifier on it so you get an error if you do not include something like commons-jexl yourself.