调用者:运行
全名:
org.apache.maven.plugins:maven-invoker-plugin:3.2.2:run
说明:
搜索集成测试 Maven 项目,并执行每个项目,在项目目录中收集日志,并将结果输出到命令行。
属性:
- 需要执行一个 Maven 项目。
- 需要范围内工件的依赖关系解析:
test. - 自版本:
1.0. - 默认绑定到生命周期阶段:
integration-test.
可选参数
| 姓名 | 类型 | 自从 | 描述 |
|---|---|---|---|
<addTestClassPath> |
boolean |
1.2 |
一个标志,被测项目的测试类路径是否应该包含在构建前/构建后脚本的类路径中。如果设置为false,则脚本解释器的类路径仅包含Maven Invoker 插件的运行时依赖项。如果设置
true,项目的测试类路径将被添加到解释器类路径中。除其他外,此功能允许脚本从项目的测试源访问实用程序类。默认值为: false。用户属性是: invoker.addTestClassPath。 |
<cloneAllFiles> |
boolean |
1.2 |
将 IT 项目从参数 projectsDirectory 指定的目录复制到 cloneProjectsTo 指定的目录时,通常会排除一些文件(例如.svn,
CVS、*~等:完整列表参见参考资料
)。将此参数设置为true将导致将所有文件复制到cloneProjectsTo
目录中。默认值为: false。 |
<cloneClean> |
boolean |
1.6 |
确保cloneProjectsTo目录没有被早期调用程序运行的文件污染。默认值为: true。 |
<cloneProjectsTo> |
File |
1.1 |
在执行之前应将项目克隆到的目录。如果设置为null,则每个集成测试都将在找到相应 IT POM 的目录中运行。在这种情况下,您很可能希望将 SCM 配置为忽略
target并build.log位于测试的基本目录中。(使用invoker插件的项目是maven-plugin打包的例外:在这种情况下,IT项目将被默认克隆并执行。)用户属性是:。target/itsinvoker.cloneProjectsTo |
<debug> |
boolean |
1.0 |
是否在构建输出中显示调试语句。 默认值为: false。用户属性是: invoker.debug。 |
<disableReports> |
boolean |
1.4 |
禁用生成报告生成的标志。 默认值为: false。用户属性是: invoker.disableReports。 |
<encoding> |
String |
1.2 |
构建前/构建后脚本的文件编码以及目标和配置文件的列表文件。 默认值为: ${project.build.sourceEncoding}。用户属性是: encoding。 |
<environmentVariables> |
Map |
1.8 |
要在命令行上设置的其他环境变量。 |
<failIfNoProjects> |
Boolean |
1.9 |
true如果没有要调用的项目,请将其设置为导致失败。用户属性是: invoker.failIfNoProjects。 |
<filterProperties> |
Map |
1.3 |
将用于过滤 POM 和目标文件中的令牌的附加属性列表。 |
<goals> |
List |
1.0 |
每个项目要执行的目标列表。默认值为:
package。 |
<ignoreFailures> |
boolean |
1.3 |
控制子构建失败是否也应该使主构建失败的标志。如果设置为true,即使一个或多个子构建失败,主构建也会继续。默认值为: false。用户属性是: maven.test.failure.ignore。 |
<invokerPropertiesFile> |
String |
1.2 |
包含用于指定单个 Maven 调用设置的属性的可选项目特定文件的名称。文件中存在的任何属性都将覆盖插件配置中的相应设置。属性的值被过滤,并且可以使用表达式
${project.version}来引用项目属性或参数中的值filterProperties。
从 3.2.0 开始,可以将此文件夹放在任何祖先文件夹中,其中将继承属性。这样,您可以为一组项目提供单个属性文件 下面的代码片段描述了支持的属性:
# A comma or space separated list of goals/phases to execute, may
# specify an empty list to execute the default goal of the IT project.
# Environment variables used by maven plugins can be added here
invoker.goals = clean install -Dplugin.variable=value
# Or you can give things like this if you need.
invoker.goals = -T2 clean verify
# Optionally, a list of goals to run during further invocations of Maven
invoker.goals.2 = ${project.groupId}:${project.artifactId}:${project.version}:run
# A comma or space separated list of profiles to activate
invoker.profiles = its,jdk15
# The path to an alternative POM or base directory to invoke Maven on, defaults to the
# project that was originally specified in the plugin configuration
# Since plugin version 1.4
invoker.project = sub-module
# The value for the environment variable MAVEN_OPTS
invoker.mavenOpts = -Dfile.encoding=UTF-16 -Xms32m -Xmx256m
# Possible values are "fail-fast" (default), "fail-at-end" and "fail-never"
invoker.failureBehavior = fail-never
# The expected result of the build, possible values are "success" (default) and "failure"
invoker.buildResult = failure
# A boolean value controlling the aggregator mode of Maven, defaults to "false"
invoker.nonRecursive = true
# A boolean value controlling the network behavior of Maven, defaults to "false"
# Since plugin version 1.4
invoker.offline = true
# The path to the properties file from which to load system properties, defaults to the
# filename given by the plugin parameter testPropertiesFile
# Since plugin version 1.4
invoker.systemPropertiesFile = test.properties
# An optional human friendly name for this build job to be included in the build reports.
# Since plugin version 1.4
invoker.name = Test Build 01
# An optional description for this build job to be included in the build reports.
# Since plugin version 1.4
invoker.description = Checks the support for build reports.
# A comma separated list of JRE versions on which this build job should be run.
# Since plugin version 1.4
invoker.java.version = 1.4+, !1.4.1, 1.7-
# A comma separated list of OS families on which this build job should be run.
# Since plugin version 1.4
invoker.os.family = !windows, unix, mac
# A comma separated list of Maven versions on which this build should be run.
# Since plugin version 1.5
invoker.maven.version = 2.0.10+, !2.1.0, !2.2.0
# A mapping for toolchain to ensure it exists
# Since plugin version 3.2.0
invoker.toolchain.<type>.<provides> = value
invoker.toolchain.jdk.version = 11
# For java.version, maven.version, os.family and toolchain it is possible to define multiple selectors.
# If one of the indexed selectors matches, the test is executed.
# With the invoker.x.y equivalents you can specify global matchers.
selector.1.java.version = 1.8+
selector.1.maven.version = 3.2.5+
selector.1.os.family = !windows
selector.2.maven.version = 3.0+
selector.3.java.version = 9+
# A boolean value controlling the debug logging level of Maven, , defaults to "false"
# Since plugin version 1.8
invoker.debug = true
# Path to an alternate settings.xml to use for Maven invocation with this IT.
# Since plugin version 3.0.1
invoker.settingsFile = ../
# An integer value to control run order of projects. sorted in the descending order of the ordinal.
# In other words, the BuildJobs with the highest numbers will be executed first
# Since plugin version 3.2.1
invoker.ordinal = 3
invoker.ordinal = 1
# The additional value for the environment variable.
# Since plugin version 3.2.2
invoker.environmentVariables.<variableName> = variableValue
invoker.environmentVariables.MY_ENV_NAME = myEnvValue
默认值为: invoker.properties。用户属性是: invoker.invokerPropertiesFile。 |
<invokerTest> |
String |
1.1 (exclusion since 1.8) |
要运行的项目名称模式的逗号分隔列表。指定此参数以按文件名运行单个测试,覆盖
setupIncludes、pomIncludes和
pomExcludes参数。您在此处指定的每个模式都将用于创建格式如下的包含/排除模式
。要排除测试,请在模式前加上“ ”。所以你可以只键入在and
中运行构建,而不是
User 属性是: 。${projectsDirectory}/pattern!-Dinvoker.test=SimpleTest,Comp*Test,!Compare*${projectsDirectory}/SimpleTest${projectsDirectory}/ComplexTest${projectsDirectory}/CompareTestinvoker.test |
<javaHome> |
File |
1.3 |
JAVA_HOME用于分叉 Maven 调用的环境变量。默认为当前 Java 主目录。用户属性是: invoker.javaHome。 |
<junitPackageName> |
String |
3.1.2 |
junit 报告中使用的包名 默认值为: maven.invoker.it。用户属性是: invoker.junitPackageName。 |
<localRepositoryPath> |
File |
1.0 |
用于缓存工件的本地存储库。强烈建议指定一个独立存储库的路径,例如
${project.build.directory}/it-repo. 否则,将使用您的普通本地存储库,可能会被损坏的工件弄脏。默认值为: ${settings.localRepository}。用户属性是: invoker.localRepositoryPath。 |
<logDirectory> |
File |
3.2.0 |
默认情况下 abuild.log在项目的根目录中创建。通过设置此文件夹,文件将写入不同的文件夹,尊重项目目录的结构。 |
<mavenExecutable> |
String |
1.8 |
mavenExecutable 可以是相对文件
${maven.home}/bin/或绝对文件。用户属性是: invoker.mavenExecutable。 |
<mavenHome> |
File |
1.3 |
用于分叉构建的 Maven 安装的主目录。默认为当前的 Maven 安装。 用户属性是: invoker.mavenHome。 |
<mavenOpts> |
String |
1.2 |
MAVEN_OPTS调用 Maven 时使用的环境变量。可以使用invokerPropertiesFile. 用户属性是: invoker.mavenOpts。 |
<mergeUserSettings> |
boolean |
1.6 |
如果启用并且您为执行配置了设置文件,它将与您的用户设置合并。 默认值为: false。用户属性是: invoker.mergeUserSettings。 |
<noLog> |
boolean |
1.0 |
禁止记录到build.log文件。默认值为: false。用户属性是: invoker.noLog。 |
<parallelThreads> |
String |
1.6 |
并行运行测试的线程数。这将是并行的 Maven 分叉进程的数量。当以“C”结束时,数字部分乘以 Java 虚拟机可用的处理器(内核)数。浮点值仅与“C”一起接受。 示例值:“1.5C”、“4” 默认值为: 1。用户属性是: invoker.parallelThreads。 |
<pom> |
File |
1.0 |
要构建的单个 POM,跳过任何扫描参数和行为。 用户属性是: invoker.pom。 |
<pomExcludes> |
List |
1.0 |
排除用于搜索集成测试目录的模式。此参数旨在从 POM 中设置。默认情况下,不排除任何 POM 文件。为了方便使用类似的包含模式
*,参数指定的自定义设置文件
settingsFile将始终被自动排除。 |
<pomIncludes> |
List |
1.0 |
包括用于在集成测试目录中搜索项目的模式。此参数旨在从 POM 中设置。如果不设置此参数,插件将搜索下
pom.xml一个目录
projectsDirectory(即*/pom.xml)的所有文件。从 1.3 版开始,这些模式也可以匹配单纯的目录。例如,包含模式 *
将在 的所有直接子目录上运行 Maven 构建
projectsDirectory,无论它们是否包含
pom.xml. 这允许执行需要/不应该依赖于 POM 存在的构建。 |
<postBuildHookScript> |
String |
1.0 |
执行构建后要运行的清理/验证挂钩脚本的相对路径。该脚本可以使用 BeanShell 或 Groovy(从 1.3 开始)编写。如果省略文件扩展名(例如verify),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于
true或抛出异常的非空值,则相应的构建被标记为失败。默认值为: postbuild。用户属性是: invoker.postBuildHookScript。 |
<preBuildHookScript> |
String |
1.0 |
在执行构建之前运行的预构建钩子脚本的相对路径。该脚本可以使用 BeanShell 或 Groovy(从 1.3 开始)编写。如果省略文件扩展名(例如
prebuild),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于
true或抛出异常的非空值,则相应的构建被标记为失败。在这种情况下,既不会调用 Maven 也不会调用构建后挂钩脚本。默认值为: prebuild。用户属性是: invoker.preBuildHookScript。 |
<profiles> |
List |
1.1 |
要在构建中显式触发的配置文件标识符列表。 |
<projectsDirectory> |
File |
1.0 |
搜索集成测试的目录。 默认值为: ${basedir}/src/it/。用户属性是: invoker.projectsDirectory。 |
<properties> |
Map |
1.1 |
通过 -D 参数在每个项目的命令行上传递的一组通用属性。 |
<reportsDirectory> |
File |
1.4 |
写入所有构建报告的基本目录。集成测试的每次执行都会生成一个 XML 文件,其中包含有关特定构建作业成功或失败的信息。生成的 XML 文件的格式记录在给定的构建作业
参考中。 默认值为: ${project.build.directory}/invoker-reports。用户属性是: invoker.reportsDirectory。 |
<scriptVariables> |
Map |
1.9 |
用于挂钩脚本的附加变量。 |
<selectorScript> |
String |
1.5 |
选择器脚本的相对路径,以决定是否应该执行构建。该脚本可以使用 BeanShell 或 Groovy 编写。如果省略文件扩展名(例如
selector),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于 的非空值
true,则相应的构建将被标记为已跳过。在这种情况下,不会调用构建前挂钩脚本、Maven 和构建后挂钩脚本。如果此脚本抛出异常,则相应的构建被标记为错误,并且不会调用构建前的钩子脚本,Maven 而不是构建后的钩子脚本。默认值为: selector。用户属性是: invoker.selectorScript. |
<settingsFile> |
File |
1.2 |
settings.xml用于所有 IT 的 Maven 调用的备用路径。请注意,
<localRepository>此设置文件的元素始终被忽略,即参数给定的路径
localRepositoryPath占主导地位。用户属性是: invoker.settingsFile。 |
<setupIncludes> |
List |
1.3 |
包括用于在项目目录中搜索需要在其他项目之前运行的项目的模式。此参数允许声明执行设置任务的项目,例如将实用程序工件安装到本地存储库中。与这些模式匹配的项目被隐式地排除在普通项目的扫描之外。此外,该参数定义的排除项也
pomExcludes适用于设置项目。默认值为:setup*/pom.xml。 |
<showErrors> |
boolean |
1.0 |
是否在构建输出中显示错误。 默认值为: false。用户属性是: invoker.showErrors。 |
<showVersion> |
boolean |
1.4 |
启用用于运行其的显示 mvn 版本的标志(cli 选项:-V,--show-version) 默认值为: false。用户属性是: invoker.showVersion。 |
<skipInvocation> |
boolean |
1.1 |
用于禁止某些调用的标志。这在使用配置文件定制构建时很有用。 默认值为: false。用户属性是: invoker.skip。 |
<streamLogs> |
boolean |
1.0 |
用于确定是否应将构建日志输出到普通 mojo 日志的标志。 默认值为: false。用户属性是: invoker.streamLogs。 |
<streamLogsOnFailures> |
boolean |
3.2.2 |
设置为true在作业失败的情况下将 build.log 输出到 mojo 日志。默认值为: false。用户属性是: invoker.streamLogsOnFailures。 |
<suppressSummaries> |
boolean |
1.0 |
用于禁止通知成功和失败的摘要输出的标志。如果设置为true,构建成功或失败的唯一指示将是它对主构建的影响(如果失败,主构建也应该失败)。如果
streamLogs启用,子构建摘要也将提供指示。默认值为: false。 |
<testPropertiesFile> |
String |
1.0 |
为测试定义 CLI 属性的属性文件的位置。 默认值为: test.properties。用户属性是: invoker.testPropertiesFile。 |
<timeoutInSeconds> |
int |
3.0.2 |
(无描述) 默认值为: 0。用户属性是: invoker.timeoutInSeconds。 |
<updateOnly> |
boolean |
3.2.2 |
仅当自上次构建后其源已被修改时才调用 Maven 项目。仅与 结合使用
cloneProjectsTo。默认值为: false。用户属性是: invoker.updateOnly。 |
<writeJunitReport> |
boolean |
3.1.2 |
以junit格式写入测试结果。 默认值为: false。用户属性是: invoker.writeJunitReport。 |
参数详情
<添加测试类路径>
一个标志,被测项目的测试类路径是否应该包含在构建前/构建后脚本的类路径中。如果设置为
false,则脚本解释器的类路径仅包含Maven Invoker 插件的运行时依赖项。如果设置
true,项目的测试类路径将被添加到解释器类路径中。除其他外,此功能允许脚本从项目的测试源访问实用程序类。- 类型:
boolean - 自:
1.2 - 必需:
No - 用户属性:
invoker.addTestClassPath - 默认:
false
<克隆所有文件>
将 IT 项目从参数 projectsDirectory 指定的目录复制到 cloneProjectsTo 指定的目录时,通常会排除一些文件(例如
.svn,
CVS、*~等:完整列表参见参考资料
)。将此参数设置为true将导致将所有文件复制到cloneProjectsTo
目录中。- 类型:
boolean - 自:
1.2 - 必需:
No - 默认:
false
<克隆清洁>
确保
cloneProjectsTo目录没有被早期调用程序运行的文件污染。- 类型:
boolean - 自:
1.6 - 必需:
No - 默认:
true
<cloneProjectsTo>
在执行之前应将项目克隆到的目录。如果设置为
null,则每个集成测试都将在找到相应 IT POM 的目录中运行。在这种情况下,您很可能希望将 SCM 配置为忽略
target并build.log位于测试的基本目录中。(使用invoker插件的项目是maven-plugin打包的例外:在这种情况下,IT项目将被默认克隆并执行。)target/its- 类型:
java.io.File - 自:
1.1 - 必需:
No - 用户属性:
invoker.cloneProjectsTo
<调试>
是否在构建输出中显示调试语句。
- 类型:
boolean - 自:
1.0 - 必需:
No - 用户属性:
invoker.debug - 默认:
false
<禁用报告>
禁用生成报告生成的标志。
- 类型:
boolean - 自:
1.4 - 必需:
No - 用户属性:
invoker.disableReports - 默认:
false
<编码>
构建前/构建后脚本的文件编码以及目标和配置文件的列表文件。
- 类型:
java.lang.String - 自:
1.2 - 必需:
No - 用户属性:
encoding - 默认:
${project.build.sourceEncoding}
<环境变量>
要在命令行上设置的其他环境变量。
- 类型:
java.util.Map - 自:
1.8 - 必需:
No
<failIfNoProjects>
true如果没有要调用的项目,请将其设置为导致失败。- 类型:
java.lang.Boolean - 自:
1.9 - 必需:
No - 用户属性:
invoker.failIfNoProjects
<过滤器属性>
将用于过滤 POM 和目标文件中的令牌的附加属性列表。
- 类型:
java.util.Map - 自:
1.3 - 必需:
No
<目标>
每个项目要执行的目标列表。默认值为:
package。- 类型:
java.util.List - 自:
1.0 - 必需:
No
<忽略失败>
控制子构建失败是否也应该使主构建失败的标志。如果设置为
true,即使一个或多个子构建失败,主构建也会继续。- 类型:
boolean - 自:
1.3 - 必需:
No - 用户属性:
maven.test.failure.ignore - 默认:
false
<invokerPropertiesFile>
包含用于指定单个 Maven 调用设置的属性的可选项目特定文件的名称。文件中存在的任何属性都将覆盖插件配置中的相应设置。属性的值被过滤,并且可以使用表达式
${project.version}来引用项目属性或参数中的值filterProperties。
从 3.2.0 开始,可以将此文件夹放在任何祖先文件夹中,其中将继承属性。这样,您可以为一组项目提供单个属性文件
下面的代码片段描述了支持的属性:
# A comma or space separated list of goals/phases to execute, may
# specify an empty list to execute the default goal of the IT project.
# Environment variables used by maven plugins can be added here
invoker.goals = clean install -Dplugin.variable=value
# Or you can give things like this if you need.
invoker.goals = -T2 clean verify
# Optionally, a list of goals to run during further invocations of Maven
invoker.goals.2 = ${project.groupId}:${project.artifactId}:${project.version}:run
# A comma or space separated list of profiles to activate
invoker.profiles = its,jdk15
# The path to an alternative POM or base directory to invoke Maven on, defaults to the
# project that was originally specified in the plugin configuration
# Since plugin version 1.4
invoker.project = sub-module
# The value for the environment variable MAVEN_OPTS
invoker.mavenOpts = -Dfile.encoding=UTF-16 -Xms32m -Xmx256m
# Possible values are "fail-fast" (default), "fail-at-end" and "fail-never"
invoker.failureBehavior = fail-never
# The expected result of the build, possible values are "success" (default) and "failure"
invoker.buildResult = failure
# A boolean value controlling the aggregator mode of Maven, defaults to "false"
invoker.nonRecursive = true
# A boolean value controlling the network behavior of Maven, defaults to "false"
# Since plugin version 1.4
invoker.offline = true
# The path to the properties file from which to load system properties, defaults to the
# filename given by the plugin parameter testPropertiesFile
# Since plugin version 1.4
invoker.systemPropertiesFile = test.properties
# An optional human friendly name for this build job to be included in the build reports.
# Since plugin version 1.4
invoker.name = Test Build 01
# An optional description for this build job to be included in the build reports.
# Since plugin version 1.4
invoker.description = Checks the support for build reports.
# A comma separated list of JRE versions on which this build job should be run.
# Since plugin version 1.4
invoker.java.version = 1.4+, !1.4.1, 1.7-
# A comma separated list of OS families on which this build job should be run.
# Since plugin version 1.4
invoker.os.family = !windows, unix, mac
# A comma separated list of Maven versions on which this build should be run.
# Since plugin version 1.5
invoker.maven.version = 2.0.10+, !2.1.0, !2.2.0
# A mapping for toolchain to ensure it exists
# Since plugin version 3.2.0
invoker.toolchain.<type>.<provides> = value
invoker.toolchain.jdk.version = 11
# For java.version, maven.version, os.family and toolchain it is possible to define multiple selectors.
# If one of the indexed selectors matches, the test is executed.
# With the invoker.x.y equivalents you can specify global matchers.
selector.1.java.version = 1.8+
selector.1.maven.version = 3.2.5+
selector.1.os.family = !windows
selector.2.maven.version = 3.0+
selector.3.java.version = 9+
# A boolean value controlling the debug logging level of Maven, , defaults to "false"
# Since plugin version 1.8
invoker.debug = true
# Path to an alternate settings.xml to use for Maven invocation with this IT.
# Since plugin version 3.0.1
invoker.settingsFile = ../
# An integer value to control run order of projects. sorted in the descending order of the ordinal.
# In other words, the BuildJobs with the highest numbers will be executed first
# Since plugin version 3.2.1
invoker.ordinal = 3
invoker.ordinal = 1
# The additional value for the environment variable.
# Since plugin version 3.2.2
invoker.environmentVariables.<variableName> = variableValue
invoker.environmentVariables.MY_ENV_NAME = myEnvValue
- 类型:
java.lang.String - 自:
1.2 - 必需:
No - 用户属性:
invoker.invokerPropertiesFile - 默认:
invoker.properties
<调用者测试>
要运行的项目名称模式的逗号分隔列表。指定此参数以按文件名运行单个测试,覆盖
setupIncludes、pomIncludes和
pomExcludes参数。您在此处指定的每个模式都将用于创建格式如下的包含/排除模式
。要排除测试,请在模式前加上“ ”。因此,您可以只键入在and
中运行构建,但不能
${projectsDirectory}/pattern!-Dinvoker.test=SimpleTest,Comp*Test,!Compare*${projectsDirectory}/SimpleTest${projectsDirectory}/ComplexTest${projectsDirectory}/CompareTest- 类型:
java.lang.String - 自:
1.1 (exclusion since 1.8) - 必需:
No - 用户属性:
invoker.test
<java首页>
JAVA_HOME用于分叉 Maven 调用的环境变量。默认为当前 Java 主目录。- 类型:
java.io.File - 自:
1.3 - 必需:
No - 用户属性:
invoker.javaHome
<junitPackageName>
junit报告中使用的包名
- 类型:
java.lang.String - 自:
3.1.2 - 必需:
No - 用户属性:
invoker.junitPackageName - 默认:
maven.invoker.it
<localRepositoryPath>
用于缓存工件的本地存储库。强烈建议指定一个独立存储库的路径,例如
${project.build.directory}/it-repo. 否则,将使用您的普通本地存储库,可能会被损坏的工件弄脏。- 类型:
java.io.File - 自:
1.0 - 必需:
No - 用户属性:
invoker.localRepositoryPath - 默认:
${settings.localRepository}
<日志目录>
默认情况下 a
build.log在项目的根目录中创建。通过设置此文件夹,文件将写入不同的文件夹,尊重项目目录的结构。- 类型:
java.io.File - 自:
3.2.0 - 必需:
No
<maven可执行文件>
mavenExecutable 可以是相对文件
${maven.home}/bin/或绝对文件。- 类型:
java.lang.String - 自:
1.8 - 必需:
No - 用户属性:
invoker.mavenExecutable
<maven首页>
用于分叉构建的 Maven 安装的主目录。默认为当前的 Maven 安装。
- 类型:
java.io.File - 自:
1.3 - 必需:
No - 用户属性:
invoker.mavenHome
<mavenOpts>
MAVEN_OPTS调用 Maven 时使用的环境变量。可以使用invokerPropertiesFile.- 类型:
java.lang.String - 自:
1.2 - 必需:
No - 用户属性:
invoker.mavenOpts
<合并用户设置>
如果启用并且您为执行配置了设置文件,它将与您的用户设置合并。
- 类型:
boolean - 自:
1.6 - 必需:
No - 用户属性:
invoker.mergeUserSettings - 默认:
false
<无日志>
禁止记录到
build.log文件。- 类型:
boolean - 自:
1.0 - 必需:
No - 用户属性:
invoker.noLog - 默认:
false
<并行线程>
并行运行测试的线程数。这将是并行的 Maven 分叉进程的数量。当以“C”结束时,数字部分乘以 Java 虚拟机可用的处理器(内核)数。浮点值仅与“C”一起接受。
示例值:“1.5C”、“4”
- 类型:
java.lang.String - 自:
1.6 - 必需:
No - 用户属性:
invoker.parallelThreads - 默认:
1
<pom>
要构建的单个 POM,跳过任何扫描参数和行为。
- 类型:
java.io.File - 自:
1.0 - 必需:
No - 用户属性:
invoker.pom
<pom 排除>
排除用于搜索集成测试目录的模式。此参数旨在从 POM 中设置。默认情况下,不排除任何 POM 文件。为了方便使用类似的包含模式
*,参数指定的自定义设置文件
settingsFile将始终被自动排除。- 类型:
java.util.List - 自:
1.0 - 必需:
No
<pom包含>
包括用于在集成测试目录中搜索项目的模式。此参数旨在从 POM 中设置。如果不设置此参数,插件将搜索下
从 1.3 版开始,这些模式也可以匹配单纯的目录。例如,包含模式
pom.xml一个目录
projectsDirectory(即*/pom.xml)的所有文件。从 1.3 版开始,这些模式也可以匹配单纯的目录。例如,包含模式
*
将在 的所有直接子目录上运行 Maven 构建
projectsDirectory,无论它们是否包含
pom.xml. 这允许执行需要/不应该依赖于 POM 存在的构建。- 类型:
java.util.List - 自:
1.0 - 必需:
No
<postBuildHookScript>
执行构建后要运行的清理/验证挂钩脚本的相对路径。该脚本可以使用 BeanShell 或 Groovy(从 1.3 开始)编写。如果省略文件扩展名(例如
verify),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于
true或抛出异常的非空值,则相应的构建被标记为失败。- 类型:
java.lang.String - 自:
1.0 - 必需:
No - 用户属性:
invoker.postBuildHookScript - 默认:
postbuild
<preBuildHookScript>
在执行构建之前运行的预构建钩子脚本的相对路径。该脚本可以使用 BeanShell 或 Groovy(从 1.3 开始)编写。如果省略文件扩展名(例如
prebuild),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于
true或抛出异常的非空值,则相应的构建被标记为失败。在这种情况下,既不会调用 Maven 也不会调用构建后挂钩脚本。- 类型:
java.lang.String - 自:
1.0 - 必需:
No - 用户属性:
invoker.preBuildHookScript - 默认:
prebuild
<个人资料>
要在构建中显式触发的配置文件标识符列表。
- 类型:
java.util.List - 自:
1.1 - 必需:
No
<项目目录>
搜索集成测试的目录。
- 类型:
java.io.File - 自:
1.0 - 必需:
No - 用户属性:
invoker.projectsDirectory - 默认:
${basedir}/src/it/
<属性>
通过 -D 参数在每个项目的命令行上传递的一组通用属性。
- 类型:
java.util.Map - 自:
1.1 - 必需:
No
<报告目录>
写入所有构建报告的基本目录。集成测试的每次执行都会生成一个 XML 文件,其中包含有关特定构建作业成功或失败的信息。生成的 XML 文件的格式记录在给定的构建作业
参考中。
- 类型:
java.io.File - 自:
1.4 - 必需:
No - 用户属性:
invoker.reportsDirectory - 默认:
${project.build.directory}/invoker-reports
<脚本变量>
用于挂钩脚本的附加变量。
- 类型:
java.util.Map - 自:
1.9 - 必需:
No
<选择器脚本>
选择器脚本的相对路径,以决定是否应该执行构建。该脚本可以使用 BeanShell 或 Groovy 编写。如果省略文件扩展名(例如
selector),插件会通过尝试众所周知的扩展名.bsh和
.groovy. 如果此脚本存在于特定项目但返回任何不同于 的非空值
true,则相应的构建将被标记为已跳过。在这种情况下,不会调用构建前挂钩脚本、Maven 和构建后挂钩脚本。如果此脚本抛出异常,则相应的构建被标记为错误,并且不会调用构建前的钩子脚本,Maven 而不是构建后的钩子脚本。- 类型:
java.lang.String - 自:
1.5 - 必需:
No - 用户属性:
invoker.selectorScript - 默认:
selector
<设置文件>
settings.xml用于所有 IT 的 Maven 调用的备用路径。请注意,
<localRepository>此设置文件的元素始终被忽略,即参数给定的路径
localRepositoryPath占主导地位。- 类型:
java.io.File - 自:
1.2 - 必需:
No - 用户属性:
invoker.settingsFile
<设置包括>
包括用于在项目目录中搜索需要在其他项目之前运行的项目的模式。此参数允许声明执行设置任务的项目,例如将实用程序工件安装到本地存储库中。与这些模式匹配的项目被隐式地排除在普通项目的扫描之外。此外,该参数定义的排除项也
pomExcludes适用于设置项目。默认值为:setup*/pom.xml。- 类型:
java.util.List - 自:
1.3 - 必需:
No
<显示错误>
是否在构建输出中显示错误。
- 类型:
boolean - 自:
1.0 - 必需:
No - 用户属性:
invoker.showErrors - 默认:
false
<显示版本>
启用用于运行其的显示 mvn 版本的标志(cli 选项:-V,--show-version)
- 类型:
boolean - 自:
1.4 - 必需:
No - 用户属性:
invoker.showVersion - 默认:
false
<skipInvocation>
用于禁止某些调用的标志。这在使用配置文件定制构建时很有用。
- 类型:
boolean - 自:
1.1 - 必需:
No - 用户属性:
invoker.skip - 默认:
false
<流日志>
用于确定是否应将构建日志输出到普通 mojo 日志的标志。
- 类型:
boolean - 自:
1.0 - 必需:
No - 用户属性:
invoker.streamLogs - 默认:
false
<streamLogsOnFailures>
设置为
true在作业失败的情况下将 build.log 输出到 mojo 日志。- 类型:
boolean - 自:
3.2.2 - 必需:
No - 用户属性:
invoker.streamLogsOnFailures - 默认:
false
<抑制摘要>
用于禁止通知成功和失败的摘要输出的标志。如果设置为
true,构建成功或失败的唯一指示将是它对主构建的影响(如果失败,主构建也应该失败)。如果
streamLogs启用,子构建摘要也将提供指示。- 类型:
boolean - 自:
1.0 - 必需:
No - 默认:
false
<测试属性文件>
为测试定义 CLI 属性的属性文件的位置。
- 类型:
java.lang.String - 自:
1.0 - 必需:
No - 用户属性:
invoker.testPropertiesFile - 默认:
test.properties
<timeoutInSeconds>
(没有说明)
- 类型:
int - 自:
3.0.2 - 必需:
No - 用户属性:
invoker.timeoutInSeconds - 默认:
0
<仅更新>
仅当自上次构建后其源已被修改时才调用 Maven 项目。仅与 结合使用
cloneProjectsTo。- 类型:
boolean - 自:
3.2.2 - 必需:
No - 用户属性:
invoker.updateOnly - 默认:
false
<writeJunitReport>
以junit格式写入测试结果。
- 类型:
boolean - 自:
3.1.2 - 必需:
No - 用户属性:
invoker.writeJunitReport - 默认:
false


