依赖:收集

全名

org.apache.maven.plugins:maven-dependency-plugin:3.3.0:collect

说明

从存储库收集项目依赖项的目标。这个目标需要 Maven 3.0 或更高版本才能运行,因为它使用“requiresDependencyCollection”。这意味着它通过下载 pom 文件来列出 groupId:artifactId:version 信息,而无需下载 jar 文件等实际工件。

当由于尚未构建的项目而导致完全依赖关系解析可能失败时,这非常有用。

ResolveDependenciesMojo除了使用 requiresDependencyCollection 注释属性而不是 requiresDependencyResolution 之外,它与此相同。

属性

  • 需要执行一个 Maven 项目。
  • 目标是线程安全的并支持并行构建。
  • 自版本:3.0.
  • 默认绑定到生命周期阶段generate-sources.

可选参数

姓名 类型 自从 描述
<appendOutput> boolean 2.2 是否将输出附加到输出文件或覆盖它。
默认值为false
用户属性是appendOutput
<classifier> String 2.0 指定要查找的分类器。示例:sources
用户属性为: classifier
<excludeArtifactIds> String 2.0 要排除的工件名称的逗号分隔列表。
用户属性是excludeArtifactIds
<excludeClassifiers> String 2.0 要排除的分类器的逗号分隔列表。空字符串表示不排除任何内容(默认)。
用户属性是excludeClassifiers
<excludeGroupIds> String 2.0 要排除的 GroupId 名称的逗号分隔列表。
用户属性是excludeGroupIds
<excludeReactor> boolean 2.7 不要解析当前反应器中的插件。
默认值为true
用户属性是excludeReactor
<excludeScope> String 2.0 如果没有为包含定义值,则要排除的范围阈值。空字符串表示没有依赖项(默认)。
被解释的范围阈值是用于创建类路径的 Maven 过滤器的范围,而不是 pom.xml 中指定的范围。总之:
  • runtimeexclude 范围排除运行时和编译依赖项,
  • compileexclude 范围排除编译、提供和系统依赖项,
  • testexclude scope 排除所有依赖项,然后不是一个真正的合法选项:它会失败,您可能打算配置 includeScope = compile
  • provided排除范围仅排除提供的依赖项,
  • system排除范围仅排除系统依赖项。

用户属性是excludeScope
<excludeTransitive> boolean 2.0 如果我们应该排除传递依赖
默认值是: false
用户属性是excludeTransitive
<excludeTypes> String 2.0 要排除的类型的逗号分隔列表。空字符串表示不排除任何内容(默认)。
用户属性是excludeTypes
<ignorePermissions> boolean 3.0 未用于此目标
<includeArtifactIds> String 2.0 要包含的工件名称的逗号分隔列表。空字符串表示包含所有内容(默认)。
用户属性是includeArtifactIds
<includeClassifiers> String 2.0 要包括的分类器的逗号分隔列表。空字符串表示包含所有内容(默认)。
用户属性是includeClassifiers
<includeGroupIds> String 2.0 要包含的 GroupId 的逗号分隔列表。空字符串表示包含所有内容(默认)。
用户属性是includeGroupIds
<includeParents> boolean 2.8 在依赖解析列表中包含父 pom。
默认值为false
用户属性是includeParents
<includeScope> String 2.0 要包括的范围阈值。空字符串表示包含所有依赖项(默认)。
被解释的范围阈值是用于创建类路径的 Maven 过滤器的范围,而不是 pom.xml 中指定的范围。总之:
  • runtime包含范围提供运行时和编译依赖项,
  • compile包含范围提供编译、提供和系统依赖项,
  • test包含范围给出所有依赖项(相当于默认),
  • provided包含范围仅提供提供的依赖项,
  • system包含范围仅给出系统依赖项。

用户属性是includeScope
<includeTypes> String 2.0 要包含的类型的逗号分隔列表。空字符串表示包含所有内容(默认)。
用户属性是includeTypes
<markersDirectory> File 2.0 存放标志文件的目录
默认值为${project.build.directory}/dependency-maven-plugin-markers.
用户属性是markersDirectory
<outputAbsoluteArtifactFilename> boolean 2.0 已解析工件的输出绝对文件名
默认值为: false
用户属性是outputAbsoluteArtifactFilename
<outputEncoding> String 3.0 (无描述)
默认值为: ${project.reporting.outputEncoding}
用户属性是outputEncoding
<outputFile> File 2.0 如果指定,此参数会导致将依赖项写入指定的路径而不是控制台。
用户属性是outputFile
<outputScope> boolean 2.0-alpha-2 如果我们应该在解析时显示范围
默认值是true
用户属性是mdep.outputScope
<overWriteIfNewer> boolean 2.0 覆盖不存在或比源更旧的工件。
默认值为true
用户属性是overWriteIfNewer
<overWriteReleases> boolean 1.0 覆盖发布工件
默认值为: false
用户属性是overWriteReleases
<overWriteSnapshots> boolean 1.0 覆盖快照工件
默认值为: false
用户属性是overWriteSnapshots
<prependGroupId> boolean 2.2 在复制期间添加 groupId。
默认值为false
用户属性是mdep.prependGroupId
<silent> boolean 2.0 如果插件应该是静默的。
默认值为false
用户属性是silent
<skip> boolean 2.7 完全跳过插件执行。
默认值为false
用户属性是mdep.skip
<sort> boolean 2.8 按字母顺序对已解析工件的输出列表进行排序。默认顺序与类路径顺序相匹配。
默认值为false
用户属性是sort
<type> String 2.0 指定基于分类器构建工件时要查找的类型。示例:java-source,jar,war
用户属性为: type
<useJvmChmod> boolean 3.0 未用于此目标

参数详情

<追加输出>

是否将输出附加到输出文件或覆盖它。
  • 类型boolean
  • 2.2
  • 必需No
  • 用户属性appendOutput
  • 默认false

<分类器>

指定要查找的分类器。示例:来源
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性classifier

<excludeArtifactIds>

要排除的工件名称的逗号分隔列表。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性excludeArtifactIds

<排除分类器>

要排除的分类器的逗号分隔列表。空字符串表示不排除任何内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性excludeClassifiers

<excludeGroupIds>

要排除的 GroupId 名称的逗号分隔列表。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性excludeGroupIds

<排除反应器>

不要解析当前反应器中的插件。
  • 类型boolean
  • 2.7
  • 必需No
  • 用户属性excludeReactor
  • 默认true

<排除范围>

如果没有为包含定义值,则要排除的范围阈值。空字符串表示没有依赖项(默认)。
被解释的范围阈值是用于创建类路径的 Maven 过滤器的范围,而不是 pom.xml 中指定的范围。总之:
  • runtimeexclude 范围排除运行时和编译依赖项,
  • compileexclude 范围排除编译、提供和系统依赖项,
  • testexclude scope 排除所有依赖项,然后不是一个真正的合法选项:它会失败,您可能打算配置 includeScope = compile
  • provided排除范围仅排除提供的依赖项,
  • system排除范围仅排除系统依赖项。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性excludeScope

<excludeTransitive>

如果我们应该排除传递依赖
  • 类型boolean
  • 2.0
  • 必需No
  • 用户属性excludeTransitive
  • 默认false

<排除类型>

要排除的类型的逗号分隔列表。空字符串表示不排除任何内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性excludeTypes

<忽略权限>

未用于此目标
  • 类型boolean
  • 3.0
  • 必需No

<includeArtifactIds>

要包含的工件名称的逗号分隔列表。空字符串表示包含所有内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性includeArtifactIds

<包括分类器>

要包括的分类器的逗号分隔列表。空字符串表示包含所有内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性includeClassifiers

<includeGroupIds>

要包含的 GroupId 的逗号分隔列表。空字符串表示包含所有内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性includeGroupIds

<包括父母>

在依赖解析列表中包含父 pom。
  • 类型boolean
  • 2.8
  • 必需No
  • 用户属性includeParents
  • 默认false

<包括范围>

要包括的范围阈值。空字符串表示包含所有依赖项(默认)。
被解释的范围阈值是用于创建类路径的 Maven 过滤器的范围,而不是 pom.xml 中指定的范围。总之:
  • runtime包含范围提供运行时和编译依赖项,
  • compile包含范围提供编译、提供和系统依赖项,
  • test包含范围给出所有依赖项(相当于默认),
  • provided包含范围仅提供提供的依赖项,
  • system包含范围仅给出系统依赖项。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性includeScope

<包括类型>

要包含的类型的逗号分隔列表。空字符串表示包含所有内容(默认)。
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性includeTypes

<标记目录>

存放标志文件的目录
  • 类型java.io.File
  • 2.0
  • 必需No
  • 用户属性markersDirectory
  • 默认${project.build.directory}/dependency-maven-plugin-markers

<outputAbsoluteArtifactFilename>

输出已解析工件的绝对文件名
  • 类型boolean
  • 2.0
  • 必需No
  • 用户属性outputAbsoluteArtifactFilename
  • 默认false

<输出编码>

(没有说明)
  • 类型java.lang.String
  • 3.0
  • 必需No
  • 用户属性outputEncoding
  • 默认${project.reporting.outputEncoding}

<输出文件>

如果指定,此参数会导致将依赖项写入指定的路径而不是控制台。
  • 类型java.io.File
  • 2.0
  • 必需No
  • 用户属性outputFile

<输出范围>

如果我们应该在解析时显示范围
  • 类型boolean
  • 2.0-alpha-2
  • 必需No
  • 用户属性mdep.outputScope
  • 默认true

<overWriteIfNewer>

覆盖不存在或比源更旧的工件。
  • 类型boolean
  • 2.0
  • 必需No
  • 用户属性overWriteIfNewer
  • 默认true

<overWriteReleases>

覆盖发布工件
  • 类型boolean
  • 1.0
  • 必需No
  • 用户属性overWriteReleases
  • 默认false

<覆盖快照>

覆盖快照工件
  • 类型boolean
  • 1.0
  • 必需No
  • 用户属性overWriteSnapshots
  • 默认false

<prependGroupId>

在复制期间添加 groupId。
  • 类型boolean
  • 2.2
  • 必需No
  • 用户属性mdep.prependGroupId
  • 默认false

<沉默>

如果插件应该是静默的。
  • 类型boolean
  • 2.0
  • 必需No
  • 用户属性silent
  • 默认false

<跳过>

完全跳过插件执行。
  • 类型boolean
  • 2.7
  • 必需No
  • 用户属性mdep.skip
  • 默认false

<排序>

按字母顺序对已解析工件的输出列表进行排序。默认顺序与类路径顺序相匹配。
  • 类型boolean
  • 2.8
  • 必需No
  • 用户属性sort
  • 默认false

<类型>

指定基于分类器构建工件时要查找的类型。示例:java-source,jar,war
  • 类型java.lang.String
  • 2.0
  • 必需No
  • 用户属性type

<使用JvmChmod>

未用于此目标
  • 类型boolean
  • 3.0
  • 必需No