maven Maven 3.0.0 Maven's model for Java project. org.apache.maven.model Model extend The model you wish your model to extend. String modelVersion The version of this model you are using. String groupId ??? used post 3.0.0 The primary grouping for your project. String artifactId ??? used post 3.0.0 The identifier used when generating the artifact for your project. String name Human readable name of the project. String version The currently version of the project. String shortDescription An abbreviated description of the project. String description A full description of the project. String type ??? use post 3.0.0 The type of artifact produced by the project. String jar url The URL where the project can be found. String logo The logo for the project. String issueTrackingUrl The URL where the issue tracking system used by the project can be found. String inceptionYear The year the project started. String gumpRepositoryId Hint for the gump continuous integration build system. String siteAddress The FQDN of the host where the project's site is uploaded. String siteDirectory The directory on the site host where site documentation is placed when the site is uploaded. String distributionSite The FQDN of the host where the project's artifacts are uploaded. String This naming is inconsistent and distriubtion should occur from a repository structure. distributionDirectory The directory on the distribution host where artifacts are placed when uploaded. String This naming is inconsistent and distriubtion should occur from a repository structure. mailingLists The mailing lists for the project. java.util.List new ArrayList() developers The developers working on the project. java.util.List new ArrayList() contributors People who have contributed to the project. java.util.List new ArrayList() dependencies The project's dependencies. java.util.List new ArrayList() These should ultimately only be compile time dependencies when transitive dependencies come into play. licenses The project's licenses. java.util.List new ArrayList() versions The released versions of the project. java.util.List new ArrayList() branches The SCM branches create for the project. java.util.List new ArrayList() packageGroups Package groups required for complete javadocs. java.util.List new ArrayList() reports Reports to be generated for the project. java.util.List new ArrayList() repository Specification for the SCM use by the project. Repository This element needs to be renamed as it conflicts with the existing notion of repositories in Maven. build Information required to build the project. Build organization This element describes various attributes of the organziation to which the project belongs. These attributes are utilized when documentation is created (for copyright notices and links). Organization private String packageName; public void setPackage(String packageName) { this.packageName = packageName; } public String getPackage() { return packageName; } public String getId() { StringBuffer id = new StringBuffer(); id.append( getGroupId() ); id.append( ":" ); id.append( getArtifactId() ); id.append( ":" ); id.append( getType() ); return id.toString(); } public void setId( String id ) { int i = id.indexOf( "+" ); int j = id.indexOf( ":" ); if ( i > 0 ) { setGroupId( id.substring( 0, i ) ); setArtifactId( id.replace( '+', '-' ) ); } else if ( j > 0 ) { setGroupId( id.substring( 0, j ) ); setArtifactId( id.substring( j + 1 ) ); } else { setGroupId( id ); setArtifactId( id ); } } Branch This element describes each of the branches of the project. Each branch is described by a tag element tag The branch tag in the version control system (e.g. cvs) used by the project for the source code associated with this branch of the project. String Build nagEmailAddress the description String sourceDirectory the description String unitTestSourceDirectory the description String aspectSourceDirectory the description String sourceModifications the description java.util.List new ArrayList() unitTest the description UnitTest new UnitTest() resources the description java.util.List new ArrayList() Contributor name the description String email the description String url the description String organization the description String roles the description java.util.SortedSet new TreeSet() Dependency groupId the description String artifactId the description String version the description String url the description String The URL should really be gleaned from a shared database of dependency information. artifact the description String type The type of dependency. String jar properties Properties for this dependency. java.util.Properties new Properties() public String getId() { return groupId + ":" + artifactId; } Contributor Developer id the description String License name the description String url the description String distribution the description String comments the description String MailingList This element describes all of the mailing lists associated with a project. Each mailing list is described by a mailingList element, which is then described by additional elements (described below). The auto-generated site documentation references this information. name The name of the mailing list. String subscribe The email address or link that can be used to subscribe to the mailing list. If this is an email address, a mailto: link will automatically be created when the documentation is created. String unsubscribe The email address or link that can be used to unsubscribe to the mailing list. If this is an email address, a mailto: link will automatically be created when the documentation is created. String archive The link to a URL where you can browse the archive. String Organization name The full name of the organization. String url The URL to the organization's home page. String logo The URL to the organization's logo image. This can be an URL relative to the base directory of the generated web site, (e.g., /images/org-logo.png) or an absolute URL (e.g., http://my.corp/logo.png). This value is used when generating the project documentation. String PackageGroup title the description String packages the description String PatternSet includes the description java.util.List new ArrayList() excludes the description java.util.List new ArrayList() Repository connection the description String developerConnection the description String url the description String Resource PatternSet directory the description String targetPath the description String filtering the description boolean SourceModification Resource className the description String property the description String UnitTest PatternSet resources the description java.util.List new ArrayList() Version This element describes each of the previous versions of the project. Each version is described by a version element name The external version number under which this release was distributed. Examples include: 1.0, 1.1-alpha1, 1.2-beta, 1.3.2 etc. String tag The name given in the version control system (e.g. cvs) used by the project for the source code associated with this version of the project. String id A unique identifier for a version. This ID is used to specify the version that maven:dist builds. String