Package org.apache.maven.model
Class Model
- java.lang.Object
-
- org.apache.maven.model.ModelBase
-
- org.apache.maven.model.Model
-
- All Implemented Interfaces:
Serializable
,Cloneable
,InputLocationTracker
public class Model extends ModelBase implements Serializable, Cloneable
The<project>
element is the root of the descriptor. The following table lists all of the possible child elements.- Version:
- $Revision$ $Date$
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Model()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addContributor(Contributor contributor)
Method addContributor.void
addDeveloper(Developer developer)
Method addDeveloper.void
addLicense(License license)
Method addLicense.void
addMailingList(MailingList mailingList)
Method addMailingList.void
addProfile(Profile profile)
Method addProfile.Model
clone()
Method clone.String
getArtifactId()
Get the identifier for this artifact that is unique within the group given by the group ID.Build
getBuild()
Get information required to build the project.String
getChildProjectUrlInheritAppendPath()
Get when children inherit from project's url, append path or not? Note: While the type of this field isString
for technical reasons, the semantic type is actuallyBoolean
Default value is:true
Since: Maven 3.6.1.CiManagement
getCiManagement()
Get the project's continuous integration information.List<Contributor>
getContributors()
Method getContributors.String
getDescription()
Get a detailed description of the project, used by Maven whenever it needs to describe the project, such as on the web site.List<Developer>
getDevelopers()
Method getDevelopers.String
getGroupId()
Get a universally unique identifier for a project.String
getId()
String
getInceptionYear()
Get the year of the project's inception, specified with 4 digits.IssueManagement
getIssueManagement()
Get the project's issue management system information.List<License>
getLicenses()
Method getLicenses.List<MailingList>
getMailingLists()
Method getMailingLists.String
getModelEncoding()
Get the modelEncoding field.String
getModelVersion()
Get declares to which version of project descriptor this POM conforms.String
getName()
Get the full name of the project.Organization
getOrganization()
Get this element describes various attributes of the organization to which the project belongs.String
getPackaging()
Get the type of artifact this project produces, for examplejar
war
ear
pom
.Parent
getParent()
Get the location of the parent project, if one exists.File
getPomFile()
Gets the POM file for the corresponding project (if any).Prerequisites
getPrerequisites()
Get describes the prerequisites in the build environment for this project.List<Profile>
getProfiles()
Method getProfiles.File
getProjectDirectory()
Gets the base directory for the corresponding project (if any).Scm
getScm()
Get specification for the SCM used by the project, such as CVS, Subversion, etc.String
getUrl()
Get the URL to the project's homepage.String
getVersion()
Get the current version of the artifact produced by this project.boolean
isChildProjectUrlInheritAppendPath()
void
removeContributor(Contributor contributor)
Method removeContributor.void
removeDeveloper(Developer developer)
Method removeDeveloper.void
removeLicense(License license)
Method removeLicense.void
removeMailingList(MailingList mailingList)
Method removeMailingList.void
removeProfile(Profile profile)
Method removeProfile.void
setArtifactId(String artifactId)
Set the identifier for this artifact that is unique within the group given by the group ID.void
setBuild(Build build)
Set information required to build the project.void
setChildProjectUrlInheritAppendPath(boolean childProjectUrlInheritAppendPath)
void
setChildProjectUrlInheritAppendPath(String childProjectUrlInheritAppendPath)
Set when children inherit from project's url, append path or not? Note: While the type of this field isString
for technical reasons, the semantic type is actuallyBoolean
Default value is:true
Since: Maven 3.6.1.void
setCiManagement(CiManagement ciManagement)
Set the project's continuous integration information.void
setContributors(List<Contributor> contributors)
Set describes the contributors to a project that are not yet committers.void
setDescription(String description)
Set a detailed description of the project, used by Maven whenever it needs to describe the project, such as on the web site.void
setDevelopers(List<Developer> developers)
Set describes the committers of a project.void
setGroupId(String groupId)
Set a universally unique identifier for a project.void
setInceptionYear(String inceptionYear)
Set the year of the project's inception, specified with 4 digits.void
setIssueManagement(IssueManagement issueManagement)
Set the project's issue management system information.void
setLicenses(List<License> licenses)
Set this element describes all of the licenses for this project.void
setMailingLists(List<MailingList> mailingLists)
Set contains information about a project's mailing lists.void
setModelEncoding(String modelEncoding)
Set the modelEncoding field.void
setModelVersion(String modelVersion)
Set declares to which version of project descriptor this POM conforms.void
setName(String name)
Set the full name of the project.void
setOrganization(Organization organization)
Set this element describes various attributes of the organization to which the project belongs.void
setPackaging(String packaging)
Set the type of artifact this project produces, for examplejar
war
ear
pom
.void
setParent(Parent parent)
Set the location of the parent project, if one exists.void
setPomFile(File pomFile)
void
setPrerequisites(Prerequisites prerequisites)
Set describes the prerequisites in the build environment for this project.void
setProfiles(List<Profile> profiles)
Set a listing of project-local build profiles which will modify the build process when activated.void
setScm(Scm scm)
Set specification for the SCM used by the project, such as CVS, Subversion, etc.void
setUrl(String url)
Set the URL to the project's homepage.void
setVersion(String version)
Set the current version of the artifact produced by this project.String
toString()
-
Methods inherited from class org.apache.maven.model.ModelBase
addDependency, addModule, addPluginRepository, addProperty, addRepository, getDependencies, getDependencyManagement, getDistributionManagement, getLocation, getModules, getPluginRepositories, getProperties, getReporting, getReports, getRepositories, removeDependency, removeModule, removePluginRepository, removeRepository, setDependencies, setDependencyManagement, setDistributionManagement, setLocation, setModules, setOtherLocation, setPluginRepositories, setProperties, setReporting, setReports, setRepositories
-
-
-
-
Method Detail
-
addContributor
public void addContributor(Contributor contributor)
Method addContributor.- Parameters:
contributor
- a contributor object.
-
addDeveloper
public void addDeveloper(Developer developer)
Method addDeveloper.- Parameters:
developer
- a developer object.
-
addLicense
public void addLicense(License license)
Method addLicense.- Parameters:
license
- a license object.
-
addMailingList
public void addMailingList(MailingList mailingList)
Method addMailingList.- Parameters:
mailingList
- a mailingList object.
-
addProfile
public void addProfile(Profile profile)
Method addProfile.- Parameters:
profile
- a profile object.
-
getArtifactId
public String getArtifactId()
Get the identifier for this artifact that is unique within the group given by the group ID. An artifact is something that is either produced or used by a project. Examples of artifacts produced by Maven for a project include: JARs, source and binary distributions, and WARs.- Returns:
- String
-
getBuild
public Build getBuild()
Get information required to build the project.- Returns:
- Build
-
getChildProjectUrlInheritAppendPath
public String getChildProjectUrlInheritAppendPath()
Get when children inherit from project's url, append path or not? Note: While the type of this field isString
for technical reasons, the semantic type is actuallyBoolean
Default value is:true
Since: Maven 3.6.1.- Returns:
- String
-
getCiManagement
public CiManagement getCiManagement()
Get the project's continuous integration information.- Returns:
- CiManagement
-
getContributors
public List<Contributor> getContributors()
Method getContributors.- Returns:
- List
-
getDescription
public String getDescription()
Get a detailed description of the project, used by Maven whenever it needs to describe the project, such as on the web site. While this element can be specified as CDATA to enable the use of HTML tags within the description, it is discouraged to allow plain text representation. If you need to modify the index page of the generated web site, you are able to specify your own instead of adjusting this text.- Returns:
- String
-
getGroupId
public String getGroupId()
Get a universally unique identifier for a project. It is normal to use a fully-qualified package name to distinguish it from other projects with a similar name (eg.org.apache.maven
).- Returns:
- String
-
getInceptionYear
public String getInceptionYear()
Get the year of the project's inception, specified with 4 digits. This value is used when generating copyright notices as well as being informational.- Returns:
- String
-
getIssueManagement
public IssueManagement getIssueManagement()
Get the project's issue management system information.- Returns:
- IssueManagement
-
getMailingLists
public List<MailingList> getMailingLists()
Method getMailingLists.- Returns:
- List
-
getModelEncoding
public String getModelEncoding()
Get the modelEncoding field.- Returns:
- String
-
getModelVersion
public String getModelVersion()
Get declares to which version of project descriptor this POM conforms.- Returns:
- String
-
getName
public String getName()
Get the full name of the project.- Returns:
- String
-
getOrganization
public Organization getOrganization()
Get this element describes various attributes of the organization to which the project belongs. These attributes are utilized when documentation is created (for copyright notices and links).- Returns:
- Organization
-
getPackaging
public String getPackaging()
Get the type of artifact this project produces, for examplejar
war
ear
pom
. Plugins can create their own packaging, and therefore their own packaging types, so this list does not contain all possible types.- Returns:
- String
-
getParent
public Parent getParent()
Get the location of the parent project, if one exists. Values from the parent project will be the default for this project if they are left unspecified. The location is given as a group ID, artifact ID and version.- Returns:
- Parent
-
getPrerequisites
public Prerequisites getPrerequisites()
Get describes the prerequisites in the build environment for this project.- Returns:
- Prerequisites
-
getScm
public Scm getScm()
Get specification for the SCM used by the project, such as CVS, Subversion, etc.- Returns:
- Scm
-
getUrl
public String getUrl()
Get the URL to the project's homepage.
Default value is: parent value [+ path adjustment] + (artifactId or project.directory property), or just parent value if project'schild.project.url.inherit.append.path="false"
- Returns:
- String
-
getVersion
public String getVersion()
Get the current version of the artifact produced by this project.- Returns:
- String
-
removeContributor
public void removeContributor(Contributor contributor)
Method removeContributor.- Parameters:
contributor
- a contributor object.
-
removeDeveloper
public void removeDeveloper(Developer developer)
Method removeDeveloper.- Parameters:
developer
- a developer object.
-
removeLicense
public void removeLicense(License license)
Method removeLicense.- Parameters:
license
- a license object.
-
removeMailingList
public void removeMailingList(MailingList mailingList)
Method removeMailingList.- Parameters:
mailingList
- a mailingList object.
-
removeProfile
public void removeProfile(Profile profile)
Method removeProfile.- Parameters:
profile
- a profile object.
-
setArtifactId
public void setArtifactId(String artifactId)
Set the identifier for this artifact that is unique within the group given by the group ID. An artifact is something that is either produced or used by a project. Examples of artifacts produced by Maven for a project include: JARs, source and binary distributions, and WARs.- Parameters:
artifactId
- a artifactId object.
-
setBuild
public void setBuild(Build build)
Set information required to build the project.- Parameters:
build
- a build object.
-
setChildProjectUrlInheritAppendPath
public void setChildProjectUrlInheritAppendPath(String childProjectUrlInheritAppendPath)
Set when children inherit from project's url, append path or not? Note: While the type of this field isString
for technical reasons, the semantic type is actuallyBoolean
Default value is:true
Since: Maven 3.6.1.- Parameters:
childProjectUrlInheritAppendPath
- a childProjectUrlInheritAppendPath object.
-
setCiManagement
public void setCiManagement(CiManagement ciManagement)
Set the project's continuous integration information.- Parameters:
ciManagement
- a ciManagement object.
-
setContributors
public void setContributors(List<Contributor> contributors)
Set describes the contributors to a project that are not yet committers.- Parameters:
contributors
- a contributors object.
-
setDescription
public void setDescription(String description)
Set a detailed description of the project, used by Maven whenever it needs to describe the project, such as on the web site. While this element can be specified as CDATA to enable the use of HTML tags within the description, it is discouraged to allow plain text representation. If you need to modify the index page of the generated web site, you are able to specify your own instead of adjusting this text.- Parameters:
description
- a description object.
-
setDevelopers
public void setDevelopers(List<Developer> developers)
Set describes the committers of a project.- Parameters:
developers
- a developers object.
-
setGroupId
public void setGroupId(String groupId)
Set a universally unique identifier for a project. It is normal to use a fully-qualified package name to distinguish it from other projects with a similar name (eg.org.apache.maven
).- Parameters:
groupId
- a groupId object.
-
setInceptionYear
public void setInceptionYear(String inceptionYear)
Set the year of the project's inception, specified with 4 digits. This value is used when generating copyright notices as well as being informational.- Parameters:
inceptionYear
- a inceptionYear object.
-
setIssueManagement
public void setIssueManagement(IssueManagement issueManagement)
Set the project's issue management system information.- Parameters:
issueManagement
- a issueManagement object.
-
setLicenses
public void setLicenses(List<License> licenses)
Set this element describes all of the licenses for this project. Each license is described by alicense
element, which is then described by additional elements. Projects should only list the license(s) that applies to the project and not the licenses that apply to dependencies. If multiple licenses are listed, it is assumed that the user can select any of them, not that they must accept all.- Parameters:
licenses
- a licenses object.
-
setMailingLists
public void setMailingLists(List<MailingList> mailingLists)
Set contains information about a project's mailing lists.- Parameters:
mailingLists
- a mailingLists object.
-
setModelEncoding
public void setModelEncoding(String modelEncoding)
Set the modelEncoding field.- Parameters:
modelEncoding
- a modelEncoding object.
-
setModelVersion
public void setModelVersion(String modelVersion)
Set declares to which version of project descriptor this POM conforms.- Parameters:
modelVersion
- a modelVersion object.
-
setName
public void setName(String name)
Set the full name of the project.- Parameters:
name
- a name object.
-
setOrganization
public void setOrganization(Organization organization)
Set this element describes various attributes of the organization to which the project belongs. These attributes are utilized when documentation is created (for copyright notices and links).- Parameters:
organization
- a organization object.
-
setPackaging
public void setPackaging(String packaging)
Set the type of artifact this project produces, for examplejar
war
ear
pom
. Plugins can create their own packaging, and therefore their own packaging types, so this list does not contain all possible types.- Parameters:
packaging
- a packaging object.
-
setParent
public void setParent(Parent parent)
Set the location of the parent project, if one exists. Values from the parent project will be the default for this project if they are left unspecified. The location is given as a group ID, artifact ID and version.- Parameters:
parent
- a parent object.
-
setPrerequisites
public void setPrerequisites(Prerequisites prerequisites)
Set describes the prerequisites in the build environment for this project.- Parameters:
prerequisites
- a prerequisites object.
-
setProfiles
public void setProfiles(List<Profile> profiles)
Set a listing of project-local build profiles which will modify the build process when activated.- Parameters:
profiles
- a profiles object.
-
setScm
public void setScm(Scm scm)
Set specification for the SCM used by the project, such as CVS, Subversion, etc.- Parameters:
scm
- a scm object.
-
setUrl
public void setUrl(String url)
Set the URL to the project's homepage.
Default value is: parent value [+ path adjustment] + (artifactId or project.directory property), or just parent value if project'schild.project.url.inherit.append.path="false"
- Parameters:
url
- a url object.
-
setVersion
public void setVersion(String version)
Set the current version of the artifact produced by this project.- Parameters:
version
- a version object.
-
getPomFile
public File getPomFile()
Gets the POM file for the corresponding project (if any).- Returns:
- The POM file from which this model originated or
null
if this model does not belong to a local project (e.g. describes the metadata of some artifact from the repository).
-
setPomFile
public void setPomFile(File pomFile)
-
getProjectDirectory
public File getProjectDirectory()
Gets the base directory for the corresponding project (if any).- Returns:
- The base directory for the corresponding project or
null
if this model does not belong to a local project (e.g. describes the metadata of some artifact from the repository).
-
getId
public String getId()
- Returns:
- the model id as
groupId:artifactId:packaging:version
-
isChildProjectUrlInheritAppendPath
public boolean isChildProjectUrlInheritAppendPath()
-
setChildProjectUrlInheritAppendPath
public void setChildProjectUrlInheritAppendPath(boolean childProjectUrlInheritAppendPath)
-
-