org.apache.maven.model
Class Dependency

java.lang.Object
  extended by org.apache.maven.model.Dependency
All Implemented Interfaces:
Serializable

public class Dependency
extends Object
implements Serializable

The <dependency> element contains information about a dependency of the project.

Version:
$Revision$ $Date$
See Also:
Serialized Form

Constructor Summary
Dependency()
           
 
Method Summary
 void addExclusion(Exclusion exclusion)
          Method addExclusion.
 String getArtifactId()
          Get the unique id for an artifact produced by the project group, e.g.
 String getClassifier()
          Get the classifier of the dependency.
 List<Exclusion> getExclusions()
          Method getExclusions.
 String getGroupId()
          Get the project group that produced the dependency, e.g.
 String getManagementKey()
           
 String getScope()
          Get the scope of the dependency - compile, runtime, test, system, and provided.
 String getSystemPath()
          Get fOR SYSTEM SCOPE ONLY.
 String getType()
          Get the type of dependency.
 String getVersion()
          Get the version of the dependency, e.g.
 boolean isOptional()
          Get indicates the dependency is optional for use of this library.
 void removeExclusion(Exclusion exclusion)
          Method removeExclusion.
 void setArtifactId(String artifactId)
          Set the unique id for an artifact produced by the project group, e.g.
 void setClassifier(String classifier)
          Set the classifier of the dependency.
 void setExclusions(List<Exclusion> exclusions)
          Set lists a set of artifacts that should be excluded from this dependency's artifact list when it comes to calculating transitive dependencies.
 void setGroupId(String groupId)
          Set the project group that produced the dependency, e.g.
 void setOptional(boolean optional)
          Set indicates the dependency is optional for use of this library.
 void setScope(String scope)
          Set the scope of the dependency - compile, runtime, test, system, and provided.
 void setSystemPath(String systemPath)
          Set fOR SYSTEM SCOPE ONLY.
 void setType(String type)
          Set the type of dependency.
 void setVersion(String version)
          Set the version of the dependency, e.g.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Dependency

public Dependency()
Method Detail

addExclusion

public void addExclusion(Exclusion exclusion)
Method addExclusion.

Parameters:
exclusion -

getArtifactId

public String getArtifactId()
Get the unique id for an artifact produced by the project group, e.g. maven-artifact.

Returns:
String

getClassifier

public String getClassifier()
Get the classifier of the dependency. This allows distinguishing two artifacts that belong to the same POM but were built differently, and is appended to the filename after the version. For example, jdk14 and jdk15.

Returns:
String

getExclusions

public List<Exclusion> getExclusions()
Method getExclusions.

Returns:
List

getGroupId

public String getGroupId()
Get the project group that produced the dependency, e.g. org.apache.maven.

Returns:
String

getScope

public String getScope()
Get the scope of the dependency - compile, runtime, test, system, and provided. Used to calculate the various classpaths used for compilation, testing, and so on. It also assists in determining which artifacts to include in a distribution of this project. For more information, see the dependency mechanism.

Returns:
String

getSystemPath

public String getSystemPath()
Get fOR SYSTEM SCOPE ONLY. Note that use of this property is discouraged and may be replaced in later versions. This specifies the path on the filesystem for this dependency. Requires an absolute path for the value, not relative. Use a property that gives the machine specific absolute path, e.g. ${java.home}.

Returns:
String

getType

public String getType()
Get the type of dependency. This defaults to jar. While it usually represents the extension on the filename of the dependency, that is not always the case. A type can be mapped to a different extension and a classifier. The type often correspongs to the packaging used, though this is also not always the case. Some examples are jar, war, ejb-client and test-jar. New types can be defined by plugins that set extensions to true, so this is not a complete list.

Returns:
String

getVersion

public String getVersion()
Get the version of the dependency, e.g. 3.2.1. In Maven 2, this can also be specified as a range of versions.

Returns:
String

isOptional

public boolean isOptional()
Get indicates the dependency is optional for use of this library. While the version of the dependency will be taken into account for dependency calculation if the library is used elsewhere, it will not be passed on transitively.

Returns:
boolean

removeExclusion

public void removeExclusion(Exclusion exclusion)
Method removeExclusion.

Parameters:
exclusion -

setArtifactId

public void setArtifactId(String artifactId)
Set the unique id for an artifact produced by the project group, e.g. maven-artifact.

Parameters:
artifactId -

setClassifier

public void setClassifier(String classifier)
Set the classifier of the dependency. This allows distinguishing two artifacts that belong to the same POM but were built differently, and is appended to the filename after the version. For example, jdk14 and jdk15.

Parameters:
classifier -

setExclusions

public void setExclusions(List<Exclusion> exclusions)
Set lists a set of artifacts that should be excluded from this dependency's artifact list when it comes to calculating transitive dependencies.

Parameters:
exclusions -

setGroupId

public void setGroupId(String groupId)
Set the project group that produced the dependency, e.g. org.apache.maven.

Parameters:
groupId -

setOptional

public void setOptional(boolean optional)
Set indicates the dependency is optional for use of this library. While the version of the dependency will be taken into account for dependency calculation if the library is used elsewhere, it will not be passed on transitively.

Parameters:
optional -

setScope

public void setScope(String scope)
Set the scope of the dependency - compile, runtime, test, system, and provided. Used to calculate the various classpaths used for compilation, testing, and so on. It also assists in determining which artifacts to include in a distribution of this project. For more information, see the dependency mechanism.

Parameters:
scope -

setSystemPath

public void setSystemPath(String systemPath)
Set fOR SYSTEM SCOPE ONLY. Note that use of this property is discouraged and may be replaced in later versions. This specifies the path on the filesystem for this dependency. Requires an absolute path for the value, not relative. Use a property that gives the machine specific absolute path, e.g. ${java.home}.

Parameters:
systemPath -

setType

public void setType(String type)
Set the type of dependency. This defaults to jar. While it usually represents the extension on the filename of the dependency, that is not always the case. A type can be mapped to a different extension and a classifier. The type often correspongs to the packaging used, though this is also not always the case. Some examples are jar, war, ejb-client and test-jar. New types can be defined by plugins that set extensions to true, so this is not a complete list.

Parameters:
type -

setVersion

public void setVersion(String version)
Set the version of the dependency, e.g. 3.2.1. In Maven 2, this can also be specified as a range of versions.

Parameters:
version -

toString

public String toString()
Overrides:
toString in class Object
See Also:
Object.toString()

getManagementKey

public String getManagementKey()
Returns:
the management key as groupId:artifactId:type


Copyright © 2001-2009 The Apache Software Foundation. All Rights Reserved.