Hi here comes a new proposition for the future descriptor.

I made it the most simpler i can think.

Please comment it.

Regards,

Raphaël


<archetype id="archetype-artifact-id" partial="true|false" >
   <!-- id is mandatory and partial is optional (defaults to false) -->
   <requiredProperties>
       <!--
           optional element as common required properties are
           groupId, artifactId, version and package
           (aliased with packageName when calling the mojo)
       -->
       <!-- maybe in flat mode -->
       <requiredProperty key="propKey" default-value="string to replace" />
       <!-- key is mandatory and default-value is optional -->
   </requiredProperties>
   <fileSets>
   <!-- maybe in flat mode -->
   <fileSet filtered="true|false" packaged="true|false" />
       <!-- filtered is optional (defaults to true) -->
       <!-- packaged is optional (defaults to true) -->
       <directory>src/main/java</directory>
       <!-- directory is mandatory -->
       <includes>
           <include>**/*.java</include>
       </includes>
       <!-- includes is optional (defaults to "**/*") -->
       <excludes>
           <exclude>Main.java</exclude>
       </excludes>
       <!-- excludes is optional (defaults to "") -->
   </fileSet>
   <!--
       the generated project's pom.xml file don't have to
       be defined in the fileSet as it is mandatory to have
       this file for a maven project (even partial ones)
       and therefore, the generation will always try to generate
       one using filters on it.
    -->
   </file-sets>
   <modules>
       <!-- modules is optional -->
       <module id="module-artifact-id">
           <!-- id is mandatory -->
           <fileSets/>
           <!-- fileSets is the same as in archetype -->
           <modules/>
           <!-- modules is the same as in archetype -->
       </module>
   </modules>
</archetype>

Reply via email to