Fork me on GitHub

ArchetypeCatalog

This is a reference for the Archetype Catalog descriptor.

These are standard catalog files which contain information about Archetypes so that users can be presented with a list of archetypes from any number of catalogs to generate new projects.

The Archetype Plugin knows by default its internal catalog. It also knows about the local and remote catalogs:

  • local represents the ~/.m2/archetype-catalog.xml catalog file,
  • remote represents the https://repo.maven.apache.org/maven2/archetype-catalog.xml catalog file.

The Archetype Plugin can also read catalogs from filesystem/HTTP by providing the path/URL of a catalog file or of a directory containing an archetype-catalog.xml file.

<archetype-catalog xmlns="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0 https://maven.apache.org/xsd/archetype-catalog-1.0.0.xsd">
  <archetypes>
    <archetype>
      <groupId/>
      <artifactId/>
      <version/>
      <repository/>
      <description/>
    </archetype>
  </archetypes>
</archetype-catalog>

archetype-catalog

No description.

Element Type Description
archetypes/archetype* List<Archetype> (Many) List of Archetypes available in this catalog.

archetype

Information to point to an Archetype referenced in the catalog.

Element Type Description
groupId String The groupId of the archetype.
artifactId String The artifactId of the archetype.
version String The version of the archetype. RELEASE is a valid version.
repository String The URL of the repository where to find the archetype. When omitted, the archetype is searched for in the repository where the catalog comes from.
description String The description of the archetype.