依赖:分析

全名

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

说明

分析此项目的依赖关系,确定哪些是:已使用和已声明;使用和未声明;未使用和声明。此目标旨在独立使用,因此它始终执行 test-compile阶段 - dependency:analyze-only在参与构建生命周期时使用目标。

默认情况下,maven-dependency-analyzer 用于执行分析,由于它在字节码级别工作而受到限制,但任何分析器都可以通过analyzer参数插入。

属性

  • 需要执行一个 Maven 项目。
  • 需要范围内工件的依赖关系解析:test.
  • 目标是线程安全的并支持并行构建。
  • 自版本:2.0-alpha-3.
  • 在执行自身之前调用生命周期阶段的执行。 test-compile

可选参数

姓名 类型 自从 描述
<analyzer> String 2.2 指定要使用的项目依赖分析器(plexus 组件角色提示)。默认情况下,使用maven-dependency-analyzer 。要使用它,您必须为此插件声明一个包含分析器代码的依赖项。分析器必须具有已声明的 Plexus 角色名称,并且您在此处指定角色名称。
默认值为default
用户属性是analyzer
<failOnWarning> boolean 2.0-alpha-3 如果发现依赖警告,是否使构建失败。
默认值为false
用户属性是failOnWarning
<ignoreNonCompile> boolean 2.0-alpha-3 忽略未使用的依赖项分析的运行时/提供/测试/系统范围。Non-test scoped列表不会受到影响。
默认值为false
用户属性是ignoreNonCompile
<ignoreUnusedRuntime> boolean 2.0-alpha-3 忽略未使用的依赖项分析的运行时范围。
默认值为false
用户属性是ignoreUnusedRuntime
<ignoredDependencies> String[] 2.10 将被忽略的依赖项列表。对此列表的任何依赖都将从“已声明但未使用”、“已使用但未声明”和“非测试范围”列表中排除。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。


<ignoredNonTestScopedDependencies> String[] 3.3.0 如果它们不在测试范围内但仅在测试类中使用,则将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。


<ignoredPackagings> List 3.2.1 将被忽略的项目打包列表。
默认值为pom, ear
<ignoredUnusedDeclaredDependencies> String[] 2.10 如果声明但未使用,则将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。


<ignoredUsedUndeclaredDependencies> String[] 2.10 如果使用但未声明,将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。


<outputXML> boolean 2.0-alpha-5 输出缺少的依赖项的 xml(使用但未声明)。
默认值为false
用户属性是outputXML
<scriptableFlag> String 2.0-alpha-5 用于可编写脚本输出的标志。
默认值为$$$%%%
用户属性是scriptableFlag
<scriptableOutput> boolean 2.0-alpha-5 为缺少的依赖项输出可编写脚本的值(使用但未声明)。
默认值为false
用户属性是scriptableOutput
<skip> boolean 2.7 完全跳过插件执行。
默认值为false
用户属性是mdep.analyze.skip
<usedDependencies> String[] 2.6 使用强制依赖项,以覆盖由字节码级分析导致的不完整结果。依赖格式为 groupId:artifactId.
<verbose> boolean 2.0-alpha-3 输出使用的依赖项。
默认值为false
用户属性是verbose

参数详情

<分析仪>

指定要使用的项目依赖分析器(plexus 组件角色提示)。默认情况下,使用maven-dependency-analyzer 。要使用它,您必须为此插件声明一个包含分析器代码的依赖项。分析器必须具有已声明的 Plexus 角色名称,并且您在此处指定角色名称。
  • 类型java.lang.String
  • 2.2
  • 必需No
  • 用户属性analyzer
  • 默认default

<失败警告>

如果发现依赖警告,是否使构建失败。
  • 类型boolean
  • 2.0-alpha-3
  • 必需No
  • 用户属性failOnWarning
  • 默认false

<忽略非编译>

忽略未使用的依赖项分析的运行时/提供/测试/系统范围。Non-test scoped列表不会受到影响。
  • 类型boolean
  • 2.0-alpha-3
  • 必需No
  • 用户属性ignoreNonCompile
  • 默认false

<ignoreUnusedRuntime>

忽略未使用的依赖项分析的运行时范围。
  • 类型boolean
  • 2.0-alpha-3
  • 必需No
  • 用户属性ignoreUnusedRuntime
  • 默认false

<ignoredDependencies>

将被忽略的依赖项列表。对此列表的任何依赖都将从“已声明但未使用”、“已使用但未声明”和“非测试范围”列表中排除。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。

  • 类型java.lang.String[]
  • 2.10
  • 必需No

<ignoredNonTestScopedDependencies>

如果它们不在测试范围内但仅在测试类中使用,则将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。

  • 类型java.lang.String[]
  • 3.3.0
  • 必需No

<忽略包装>

将被忽略的项目打包列表。
默认值为pom, ear
  • 类型java.util.List
  • 3.2.1
  • 必需No

<ignoredUnusedDeclaredDependencies>

如果声明但未使用,则将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。

  • 类型java.lang.String[]
  • 2.10
  • 必需No

<ignoredUsedUndeclaredDependencies>

如果使用但未声明,将被忽略的依赖项列表。过滤器语法是:







[groupId]:[artifactId]:[type]:[version]
其中每个模式段都是可选的,并且支持完整和部分*通配符。空模式段被视为隐式通配符。*

例如,org.apache.*将匹配组 id 以 开头的所有工件org.apache.:::*-SNAPSHOT并将匹配所有快照工件。

  • 类型java.lang.String[]
  • 2.10
  • 必需No

<输出XML>

输出缺少的依赖项的 xml(使用但未声明)。
  • 类型boolean
  • 2.0-alpha-5
  • 必需No
  • 用户属性outputXML
  • 默认false

<scriptableFlag>

用于可编写脚本输出的标志。
  • 类型java.lang.String
  • 2.0-alpha-5
  • 必需No
  • 用户属性scriptableFlag
  • 默认$$$%%%

<脚本输出>

为缺少的依赖项输出可编写脚本的值(使用但未声明)。
  • 类型boolean
  • 2.0-alpha-5
  • 必需No
  • 用户属性scriptableOutput
  • 默认false

<跳过>

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

<使用的依赖项>

使用强制依赖项,以覆盖由字节码级分析导致的不完整结果。依赖格式为 groupId:artifactId.
  • 类型java.lang.String[]
  • 2.6
  • 必需No

<详细>

输出使用的依赖项。
  • 类型boolean
  • 2.0-alpha-3
  • 必需No
  • 用户属性verbose
  • 默认false