| <?xml version="1.0"?> |
| |
| <!-- |
| Since modello does not have the capability to share descriptor, |
| If you make changes to FileSet, FileItem, DependendencySet, or |
| adding new collection, make sure to propagate your changes |
| to "component.xml". |
| --> |
| |
| |
| <model> |
| <id>assembly</id> |
| <name>Assembly</name> |
| <description> |
| <![CDATA[ |
| <p> |
| A definition of an assembly. This descriptor specifies the |
| type of assembly archive to create, the contents of the |
| assembly, and the ways in which dependencies are bundled with |
| an assembly. |
| </p> |
| <p> |
| An assembly defines a collection of files usually distributed in an |
| archive format such as zip, tar, or tar.gz that is generated from a |
| project. For example, a project could produce a ZIP assembly which |
| contains a project's JAR artifact in the root directory, the |
| runtime dependencies in a lib/ directory, and a shell script to launch |
| a stand-alone application. |
| </p> |
| ]]> |
| </description> |
| <defaults> |
| <default> |
| <key>package</key> |
| <value>org.apache.maven.plugins.assembly.model</value> |
| </default> |
| </defaults> |
| <classes> |
| <class rootElement="true" xml.tagName="assembly"> |
| <name>Assembly</name> |
| <description>Describes the assembly layout and packaging.</description> |
| <version>1.0.0</version> |
| <fields> |
| <field> |
| <name>id</name> |
| <version>1.0.0</version> |
| <required>true</required> |
| <type>String</type> |
| <description> |
| The id of this assembly. This is a symbolic name for a |
| particular assembly of files from this project. |
| </description> |
| </field> |
| <field> |
| <name>formats</name> |
| <version>1.0.0</version> |
| <required>true</required> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| <![CDATA[ |
| Specify the formats of the assembly. A format is specified by |
| supplying one of the following values in a <format> subelement: |
| <ul> |
| <li><b>"zip"</b> - Creates a ZIP file format</li> |
| <li><b>"gz"</b> - Creates a GZIP format</li> |
| <li><b>"tar"</b> - Creates a TAR format</li> |
| <li><b>"tar.gz"</b> - Creates a gzip'd TAR format</li> |
| <li><b>"tar.bz2</b> - Creates a bzip'd TAR format</li> |
| </ul> |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>includeBaseDirectory</name> |
| <type>boolean</type> |
| <defaultValue>true</defaultValue> |
| <description> |
| Includes a base directory in the final archive. For example, |
| if you are creating an assembly named "your-app", setting |
| includeBaseDirectory to true will create an archive that |
| includes this base directory. If this option is set to false |
| the archive created will unzip its content to the current |
| directory. |
| </description> |
| </field> |
| <field> |
| <name>includeSiteDirectory</name> |
| <type>boolean</type> |
| <defaultValue>false</defaultValue> |
| </field> |
| <field> |
| <name>moduleSets</name> |
| <version>1.0.0</version> |
| <association> |
| <type>ModuleSet</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| Specify which modules source files to include in the assembly |
| </description> |
| </field> |
| <field> |
| <name>fileSets</name> |
| <version>1.0.0</version> |
| <association> |
| <type>FileSet</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| Specify assembly parameters for groups of files. |
| </description> |
| </field> |
| <field> |
| <name>files</name> |
| <version>1.0.0</version> |
| <association> |
| <type>FileItem</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| Specify assembly parameters for single files. |
| </description> |
| </field> |
| <field> |
| <name>dependencySets</name> |
| <version>1.0.0</version> |
| <association> |
| <type>DependencySet</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| Specify assembly behavior for sets of dependencies. |
| </description> |
| </field> |
| <field> |
| <name>repositories</name> |
| <version>1.0.0</version> |
| <association> |
| <type>Repository</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| Specify assembly behavior for sets of repositories. |
| </description> |
| </field> |
| <field> |
| <name>componentDescriptors</name> |
| <version>1.0.0</version> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| File relative to basedir containing Component. |
| </description> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>SetBase</name> |
| <version>1.0.0</version> |
| <fields> |
| <field> |
| <name>mapper</name> |
| <version>1.0.0</version> |
| <association> |
| <type>Mapper</type> |
| </association> |
| <defaultValue>new Mapper()</defaultValue> |
| <description> |
| Specifies the mapper used. |
| </description> |
| </field> |
| <field> |
| <name>outputDirectory</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| Specifies the output directory relative to the root |
| of the root directory of the assembly. For example, |
| "log" will put the specified files in the log directory. |
| </description> |
| </field> |
| <field> |
| <name>includes</name> |
| <version>1.0.0</version> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| <![CDATA[ |
| When <include> subelements are present, they define |
| a set of files and directory to include. |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>excludes</name> |
| <version>1.0.0</version> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| <![CDATA[ |
| When <exclude> subelements are present, they define |
| a set of files and directory to exclude. |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>fileMode</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>0644</defaultValue> |
| <description> |
| <![CDATA[ |
| Similar to a UNIX permission. Format: (User)(Group)(Other) where each |
| component is a sum of Read = 4, Write = 2, and Execute = 1. For example, |
| the default value of 0644 translates to User read-write, Group and Other |
| read-only. |
| <a href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more on unix-style permissions)</a> |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>directoryMode</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>0755</defaultValue> |
| <description> |
| <![CDATA[ |
| Similar to a UNIX permission. Format: (User)(Group)(Other) where each |
| component is a sum of Read = 4, Write = 2, and Execute = 1. For example, |
| the default value of 0644 translates to User read-write, Group and Other |
| read-only. |
| <a href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more on unix-style permissions)</a> |
| ]]> |
| </description> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>Mapper</name> |
| <version>1.0.0</version> |
| <fields> |
| <field> |
| <name>type</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>identity</defaultValue> |
| <description> |
| specifies one of the built-in mapper implementations. A custom mapper may be specified by using the classname property. |
| If classname is being used, then the type should not be used. |
| <![CDATA[ |
| Valid values: |
| <ul> |
| <li><b>"flatten"</b> - The target file name is identical to the source file name, with all leading directory information stripped off. Both to and from will be ignored </li> |
| <li><b>"glob"</b> - Both to and from define patterns that may contain at most one *. For each source file that matches the from pattern, a target file name will be constructed from the to pattern by substituting the * in the to pattern with the text that matches the * in the from pattern. Source file names that don't match the from pattern will be ignored/li> |
| <li><b>"regexp"</b> - Both to and from define regular expressions. If the source file name matches the from pattern, the target file name will be constructed from the to pattern, using \0 to \9 as back-references for the full match (\0) or the matches of the subexpressions in parentheses. Source files not matching the from pattern will be ignored.</li> |
| <li><b>"merge"</b> - The target file name will always be the same, as defined by to. from will be ignored</li> |
| <li><b>"package"</b> - Sharing the same syntax as the glob mapper, the package mapper replaces directory separators found in the matched source pattern with dots in the target pattern placeholder. This mapper is particularly useful in combination with <uptodate> and <junit> output. </li> |
| <li><b>"unpackage"</b> - This mapper is the inverse of the package mapper. It replaces the dots in a package name with directory separators. This is useful for matching XML formatter results against their JUnit test test cases. The mapper shares the sample syntax as the glob mapper. </li> |
| </ul> |
| ]]> |
| </description> |
| <required>true</required> |
| </field> |
| <field> |
| <name>from</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| the from attribute for the given implementation. Depends on the implementation |
| </description> |
| </field> |
| <field> |
| <name>to</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| the to attribute for the given implementation. Depends on the implementation |
| </description> |
| </field> |
| <field> |
| <name>classname</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| Specify your own implementation of the mapper. The class has to be in the classpath of the project. |
| Do not specify the classname if the type is used. |
| </description> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>FileSet</name> |
| <version>1.0.0</version> |
| <superClass>SetBase</superClass> |
| <fields> |
| <field> |
| <name>directory</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| Absolute or relative from the module's directory. For |
| example, "src/main/bin" would select this subdirectory |
| of the project in which this dependency is defined. |
| </description> |
| <required>true</required> |
| </field> |
| <field> |
| <name>lineEnding</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| <![CDATA[ |
| Controls the line-endings of files in this fileSet. |
| Valid values: |
| <ul> |
| <li><b>"keep"</b> - Preserve all line endings</li> |
| <li><b>"unix"</b> - Use Unix-style line endings</li> |
| <li><b>"lf"</b> - Use a single line-feed line endings</li> |
| <li><b>"dos"</b> - Use DOS-style line endings</li> |
| <li><b>"crlf"</b> - Use Carraige-return, line-feed line endings</li> |
| </ul> |
| ]]> |
| </description> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>FileItem</name> |
| <version>1.0.0</version> |
| <description> |
| Allows individual file copy with option to change destination |
| file name not supported by fileSet |
| </description> |
| <fields> |
| <field> |
| <name>source</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <required>true</required> |
| <description> |
| Absolute or relative from the module's directory. |
| </description> |
| </field> |
| <field> |
| <name>outputDirectory</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <required>false</required> |
| <description> |
| Specifies the output directory relative to the root |
| of the root directory of the assembly. For example, |
| "log" will put the specified files in the log directory. |
| </description> |
| </field> |
| <field> |
| <name>destName</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| Destination file name in outputDirectory. |
| Default is the same name as the source's file. |
| </description> |
| </field> |
| <field> |
| <name>fileMode</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>0644</defaultValue> |
| <description> |
| <![CDATA[ |
| Similar to a UNIX permission. Format: (User)(Group)(Other) where each |
| component is a sum of Read = 4, Write = 2, and Execute = 1. For example, |
| the default value of 0644 translates to User read-write, Group and Other |
| read-only. |
| <a href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more on unix-style permissions)</a> |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>lineEnding</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description> |
| <![CDATA[ |
| Controls the line-endings of files in this fileSet. |
| Valid values are: |
| <ul> |
| <li><b>"keep"</b> - Preserve all line endings</li> |
| <li><b>"unix"</b> - Use Unix-style line endings</li> |
| <li><b>"lf"</b> - Use a single line-feed line endings</li> |
| <li><b>"dos"</b> - Use DOS-style line endings</li> |
| <li><b>"crlf"</b> - Use Carraige-return, line-feed line endings</li> |
| </ul> |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>filtered</name> |
| <version>1.0.0</version> |
| <type>boolean</type> |
| <description> |
| Flag used to determine if the file is filtered. |
| </description> |
| </field> |
| </fields> |
| </class> |
| |
| <class> |
| <name>DependencySet</name> |
| <version>1.0.0</version> |
| <superClass>SetBase</superClass> |
| <description>Defines a dependency set</description> |
| <fields> |
| <field> |
| <name>outputFileNameMapping</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>${artifactId}-${version}.${extension}</defaultValue> |
| <description> |
| Specify the mapping pattern for all dependencies included |
| in this assembly. |
| Default is ${artifactId}-${version}.${extension}. |
| </description> |
| </field> |
| <field> |
| <name>unpack</name> |
| <version>1.0.0</version> |
| <association> |
| <type>Unpack</type> |
| </association> |
| <description> |
| If this property exists, this will unpack all dependencies |
| into the specified output directory. |
| </description> |
| </field> |
| <field> |
| <name>scope</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>runtime</defaultValue> |
| <required>true</required> |
| <description> |
| Specifies the dependency scope for this dependencySet. |
| Default scope value is "runtime". |
| </description> |
| </field> |
| </fields> |
| </class> |
| |
| <class> |
| <name>ModuleSet</name> |
| <version>1.0.0</version> |
| <fields> |
| <field> |
| <name>includes</name> |
| <version>1.0.0</version> |
| <description> |
| <![CDATA[ |
| This is a list of <include/> elements, each containing a module reference of the type groupId:artifactId. |
| Modules matching these elements will be included in this set. |
| ]]> |
| </description> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| </field> |
| <field> |
| <name>excludes</name> |
| <version>1.0.0</version> |
| <description> |
| <![CDATA[ |
| This is a list of <exclude/> elements, each containing a module reference of the type groupId:artifactId. |
| Modules matching these elements will be excluded from this set. |
| ]]> |
| </description> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| </field> |
| <field> |
| <name>sources</name> |
| <version>1.0.0</version> |
| <description> |
| When this is configured, the plugin will include the source files of the included modules from this set in |
| the resulting assembly, according to the configuration. |
| </description> |
| <association> |
| <type>ModuleSources</type> |
| </association> |
| </field> |
| <field> |
| <name>binaries</name> |
| <version>1.0.0</version> |
| <description> |
| When this is configured, the plugin will include the binaries of the included modules from this set in |
| the resulting assembly, according to the configuration. |
| </description> |
| <association> |
| <type>ModuleBinaries</type> |
| </association> |
| </field> |
| </fields> |
| </class> |
| |
| <class> |
| <name>ModuleSources</name> |
| <version>1.0.0</version> |
| <superClass>SetBase</superClass> |
| <description>Configuration for including the source files for a Module in an assembly.</description> |
| </class> |
| |
| <class> |
| <name>ModuleBinaries</name> |
| <version>1.0.0</version> |
| <superClass>SetBase</superClass> |
| <description>Configuration for including the binary files for a Module in an assembly.</description> |
| <fields> |
| <field> |
| <name>includeDependencies</name> |
| <version>1.0.0</version> |
| <type>boolean</type> |
| <defaultValue>false</defaultValue> |
| <description> |
| If set to true, the plugin will include the direct and transitive dependencies of |
| of the project modules included here. Otherwise, it will only include the module |
| packages only. Default value is false. |
| </description> |
| </field> |
| <field> |
| <name>unpack</name> |
| <version>1.0.0</version> |
| <association> |
| <type>Unpack</type> |
| </association> |
| <description> |
| If this property exists, this will unpack all dependencies |
| into the specified output directory. |
| </description> |
| </field> |
| <field> |
| <name>outputFileNameMapping</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <defaultValue>${artifactId}-${version}.${extension}</defaultValue> |
| <description> |
| Specify the mapping pattern for all dependencies included |
| in this assembly. |
| Default is ${artifactId}-${version}.${extension}. |
| </description> |
| </field> |
| </fields> |
| </class> |
| |
| <class> |
| <name>Repository</name> |
| <version>1.0.0</version> |
| <superClass>SetBase</superClass> |
| <description>Defines a Maven repository to be included in the assembly.</description> |
| <fields> |
| <field> |
| <name>includeMetadata</name> |
| <version>1.0.0</version> |
| <type>boolean</type> |
| <defaultValue>false</defaultValue> |
| <description> |
| If set to true, this property will trigger the creation of repository |
| metadata which will allow the repository to be used as a functional remote |
| repository. |
| </description> |
| </field> |
| <field> |
| <name>groupVersionAlignments</name> |
| <version>1.0.0</version> |
| <description>Align a group to a version or an individual artifact.</description> |
| <association> |
| <type>GroupVersionAlignment</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>GroupVersionAlignment</name> |
| <version>1.0.0</version> |
| <description>Defines a Maven repository to be included in the assembly.</description> |
| <fields> |
| <field> |
| <name>id</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description>The groupId for which you want to align the versions.</description> |
| </field> |
| <field> |
| <name>version</name> |
| <version>1.0.0</version> |
| <type>String</type> |
| <description>The version you want to align this group to.</description> |
| </field> |
| <field> |
| <name>excludes</name> |
| <version>1.0.0</version> |
| <description>Artifact Ids of the artifacts you want excluded from version alignment.</description> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| </field> |
| </fields> |
| </class> |
| <class> |
| <name>Unpack</name> |
| <version>1.0.0</version> |
| <fields> |
| <field> |
| <name>includes</name> |
| <version>1.0.0</version> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| <![CDATA[ |
| When <include> subelements are present, they define |
| a set of files and directory to include. |
| ]]> |
| </description> |
| </field> |
| <field> |
| <name>excludes</name> |
| <version>1.0.0</version> |
| <association> |
| <type>String</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| <description> |
| <![CDATA[ |
| When <exclude> subelements are present, they define |
| a set of files and directory to exclude. |
| ]]> |
| </description> |
| </field> |
| </fields> |
| </class> |
| </classes> |
| </model> |
| |