此任务将创建包含 Maven 项目依赖项的文件集对象。这可用于访问特定的依赖项工件,或对一组依赖项工件进行操作。每个工件都将被分配一个格式为[prefix]groupId:artifactId:[classifier]:type的文件集 ID 。对 junit jar 的依赖将被赋予junit:junit:jar的文件集 ID 。
此外,将使用默认 ID maven.project.dependencies 创建包含所有项目依赖项的单个文件集
| 属性 | 描述 | 必需的 |
|---|---|---|
| 字首 | 附加到所有文件集 ID 的字符串 | 否,默认为空字符串 |
| projectDependenciesId | 包含所有项目依赖项的文件集的 RefId | 不,默认为“maven.project.dependencies |
| 范围 | 要包含的工件范围的逗号分隔列表 | 否,默认为所有工件 |
| 类型 | 要包含的工件类型的逗号分隔列表 | 否,默认为所有工件 |
此示例显示如何访问单个依赖项和组合的依赖项文件集。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<dependencyfilesets prefix="mydeps."/>
<mkdir dir="target/dependencies"/>
<copy todir="target/dependencies">
<fileset refid="mydeps.junit:junit:jar"/>
<fileset refid="mydeps.org.apache.ant:ant:jar"/>
</copy>
<mkdir dir="target/dependencies2"/>
<copy todir="target/dependencies2" flatten="true">
<fileset refid="mydeps.maven.project.dependencies"/>
</copy>
</target>
</configuration>
</execution>
</executions>
</plugin>