Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A Modular Classloading System

Merge pull request #76 from ropalka/fixes

Various fixes ported upstream
latest commit d2658e5e2b
@dmlloyd dmlloyd authored

This is the JBoss Modules project.

JBoss Modules is a standalone implementation of a modular (non-hierarchical) class loading and execution environment for Java. In other words, rather than a single class loader which loads all JARs into a flat class path, each library becomes a module which only links against the exact modules it depends on, and nothing more. It implements a thread-safe, fast, and highly concurrent delegating class loader model, coupled to an extensible module resolution system, which combine to form a unique, simple and powerful system for application execution and distribution.

JBoss Modules is designed to work with any existing library or application without changes, and its simple naming and resolution strategy is what makes that possible. Unlike OSGi, JBoss Modules does not implement a container; rather, it is a thin bootstrap wrapper for executing an application in a modular environment. The moment your application takes control, the modular environment is ready to load and link modules as needed. Furthermore, modules are never loaded (not even for resolution purposes) until required by a dependency, meaning that the performance of a modular application depends only on the number of modules actually used (and when they are used), rather than the total number of modules in the system. And, they may be unloaded by the user at any time.


All documentation lives at

Issue tracker

All issues can be reported at


All code can be found at


All code distributed under ASL 2.0 and XPP3.

Something went wrong with that request. Please try again.