3.12 Class loader configuration
A class loader is an object that is responsible for loading classes. Before you develop libraries to be used by applications, you must define the scope of the libraries.
Class loader configuration
Before developing libraries to be used by applications, application developers must understand the hierarchical structure of the class loaders of Java EE servers, so that they are able to define the scope of the libraries.
The hierarchical structure of the class loaders of Java EE servers is illustrated below.
The following table provides detailed information about the class loaders:
No |
Class loader name |
Description |
---|---|---|
1 |
Bootstrap |
Loads the classes provided by the Java VM. |
2 |
Extension |
Loads classes from JAR files stored in the system extensions directory (domain-dir/lib/ext). |
3 |
Public API |
Loads Java EE APIs, Application Server specific APIs, and related implementation classes |
4 |
Common |
Loads the library (JAR file) used by applications and the resource adapter. Loads the following classes:
|
5 |
Connector |
Loads the resource adapter archives which are shared across all applications. |
6 |
Applib |
Loads the library classes (JAR files) specified during deployment.# |
7 |
Archive |
Loads the following files or classes, which are included in deployed applications or modules.
|
- #:
-
If two or more deployed applications use the same library, the applications share instances of the same library.
One library cannot reference classes of another library.