HomeDocumentation > Reference > Geronimo Architecture > Repositories

Geronimo includes a repository that holds Geronimo modules and third-party JARs, which is located in repository under the Geronimo installation directory, and has a strict internal structure, modeled after the module ID for the contents. A module ID is composed with four components in a structure like group/artifact/version/type, the content for that module in the repository will be located at repository/group/artifact/version/artifact-version.type. Users can manually add files to the repository, so long as you follow this structure exactly (for instance, every JAR file must have a version number in the path and also the file name). However, the easy way would be to add files into the repository using the administration console, where the mechanics of the file paths will be handled for you.

Many entries in the repository are JAR files (regardless of the actual file extension). However, any entries for modules will actually be unpacked archives – directories laid out like the original archive was packaged. Even if a module is deployed as e.g. a WAR file or EAR file, it will be unpacked when it is installed into the repository.