构建环境报告任务

提供有关与任务关联的项目的构建环境的信息。

目前,此信息仅限于项目声明的构建脚本依赖项,以与 提供的类似方式可视化DependencyReportTask

无需手动将这种类型的任务添加到您的项目中,因为每个项目都会自动具有名为 的这种类型的任务"buildEnvironment"

特性

财产描述
actions

Action此任务将按执行顺序执行的对象序列。

ant

对于AntBuilder这个任务。您可以在构建文件中使用它来执行 ant 任务。

convention
已弃用

Convention此任务的对象。APlugin可以使用约定对象来为此任务提供属性和方法。

dependsOn

该任务的依赖关系。

description

此任务的描述。

destroyables

此任务的可破坏物。

didWork

检查任务是否确实完成了任何工作。即使一个Task执行了,它也可能确定它没有任何事可做。例如,编译任务可以确定自上次运行该任务以来源文件没有更改。

enabled

返回此任务是否启用。

extensions

扩展的容器。

finalizedBy

返回完成此任务的任务。

group

该任务所属的任务组。任务组用于报告和用户界面中,以便在向用户呈现任务列表时将相关任务分组在一起。

inputs

此任务的输入。

localState

此任务的本地状态。

logger

此任务的记录器。您可以在构建文件中使用它来写入日志消息。

logging

LoggingManager用于接收日志记录并控制此任务的标准输出/错误捕获。默认情况下,System.out 以 QUIET 日志级别重定向到 Gradle 日志系统,System.err 以 ERROR 日志级别重定向。

mustRunAfter

返回此任务必须在其之后运行的任务。

name

此任务的名称。该名称唯一标识其 中的任务Project

outputs

该任务的输出。

path

任务的路径,这是任务的完全限定名称。任务的路径是其路径Project加上任务名称,以 分隔:

project

Project该任务属于哪个。

shouldRunAfter

返回此任务应在其后运行的任务。

state

该任务的执行状态。这提供了有关此任务执行的信息,例如它是否已执行、已跳过、已失败等。

taskDependencies

返回一个TaskDependency包含该任务所依赖的所有任务的a。

temporaryDir

返回此任务可用于写入临时文件的目录。每个任务实例都有一个单独的临时目录。不保证该目录的内容将在任务执行后保留。

timeout

该任务的超时时间。

方法

方法描述
dependsOn(paths)

将给定的依赖项添加到此任务。有关可用作任务依赖项的对象类型的描述,请参阅此处。

doFirst(action)

将给定的闭包添加到该任务的操作列表的开头。执行时,闭包将作为参数传递给该任务。

doFirst(actionName, action)

将给定添加Action到该任务的操作列表的开头。

doFirst(action)

将给定添加Action到该任务的操作列表的开头。

doLast(action)

将给定的闭包添加到该任务操作列表的末尾。执行时,闭包将作为参数传递给该任务。

doLast(actionName, action)

将给定添加Action到该任务操作列表的末尾。

doLast(action)

将给定添加Action到该任务操作列表的末尾。

doNotTrackState(reasonNotToTrackState)

不跟踪任务的状态。

finalizedBy(paths)

为此任务添加给定的终结器任务。

hasProperty(propertyName)

确定此任务是否具有给定属性。有关任务可用属性的详细信息,请参阅此处。

mustRunAfter(paths)

指定此任务必须在所有提供的任务之后运行。

onlyIf(onlyIfClosure)

仅当给定的闭包返回 true 时才执行任务。闭包将在任务执行时评估,而不是在配置期间评估。闭包将传递一个参数,即此任务。如果闭包返回 false,则任务将被跳过。

onlyIf(onlyIfReason, onlyIfSpec)
孵化

仅当满足给定规范时才执行任务。该规范将在任务执行时而不是配置期间进行评估。如果不满足 Spec,则任务将被跳过。

onlyIf(onlyIfSpec)

仅当满足给定规范时才执行任务。该规范将在任务执行时而不是配置期间进行评估。如果不满足 Spec,则任务将被跳过。

property(propertyName)

返回此任务的给定属性的值。该方法按如下方式定位属性:

setProperty(name, value)

设置此任务的属性。此方法在以下位置搜索具有给定名称的属性,并在找到该属性的第一个位置设置该属性。

shouldRunAfter(paths)

指定此任务应在所有提供的任务之后运行。

usesService(service)

注册BuildService此任务使用的 a,以便 BuildServiceRegistration.getMaxParallelUsages()可以兑现。

脚本块

无脚本块

物业详情

List<Action<? super Task>> actions

Action此任务将按执行顺序执行的对象序列。

AntBuilder ant(只读)

对于AntBuilder这个任务。您可以在构建文件中使用它来执行 ant 任务。

Convention convention(只读)

注意:此属性已弃用,并将在 Gradle 的下一个主要版本中删除。

Convention此任务的对象。APlugin可以使用约定对象来为此任务提供属性和方法。

Set<Object> dependsOn

该任务的依赖关系。

String description

此任务的描述。

TaskDestroyables destroyables(只读)

此任务的可破坏物。

boolean didWork

检查任务是否确实完成了任何工作。即使一个Task执行了,它也可能确定它没有任何事可做。例如,编译任务可以确定自上次运行该任务以来源文件没有更改。

boolean enabled

返回此任务是否启用。

ExtensionContainer extensions(只读)

扩展的容器。

TaskDependency finalizedBy

返回完成此任务的任务。

String group

该任务所属的任务组。任务组用于报告和用户界面中,以便在向用户呈现任务列表时将相关任务分组在一起。

TaskInputs inputs(只读)

此任务的输入。

TaskLocalState localState(只读)

此任务的本地状态。

Logger logger(只读)

此任务的记录器。您可以在构建文件中使用它来写入日志消息。

LoggingManager logging(只读)

LoggingManager用于接收日志记录并控制此任务的标准输出/错误捕获。默认情况下,System.out 以 QUIET 日志级别重定向到 Gradle 日志系统,System.err 以 ERROR 日志级别重定向。

TaskDependency mustRunAfter

返回此任务必须在其之后运行的任务。

String name(只读)

此任务的名称。该名称唯一标识其 中的任务Project

TaskOutputs outputs(只读)

该任务的输出。

String path(只读)

任务的路径,这是任务的完全限定名称。任务的路径是其路径Project加上任务名称,以 分隔:

Project project(只读)

Project该任务属于哪个。

启用配置缓存时,不支持从任务操作调用此方法。

TaskDependency shouldRunAfter

返回此任务应在其后运行的任务。

TaskState state(只读)

该任务的执行状态。这提供了有关此任务执行的信息,例如它是否已执行、已跳过、已失败等。

TaskDependency taskDependencies(只读)

返回一个TaskDependency包含该任务所依赖的所有任务的a。

启用配置缓存时,不支持从任务操作调用此方法。

File temporaryDir(只读)

返回此任务可用于写入临时文件的目录。每个任务实例都有一个单独的临时目录。不保证该目录的内容将在任务执行后保留。

该任务的超时时间。

task myTask {
    timeout = Duration.ofMinutes(10)
}

如果任务运行时间超过指定时间,则执行此任务的线程将被中断。为了使任务能够正常使用此功能,它需要对中断做出反应,并且必须清理它打开的所有资源。

默认情况下,任务永远不会超时。

方法详情

Task dependsOnObject...路径)

将给定的依赖项添加到此任务。有关可用作任务依赖项的对象类型的描述,请参阅此处。

Task doFirstClosure行动)

将给定的闭包添加到该任务的操作列表的开头。执行时,闭包将作为参数传递给该任务。

Task doFirstString动作名称,动作)Action<? super Task>

将给定添加Action到该任务的操作列表的开头。

Task doFirst(行动)Action<? super Task>

将给定添加Action到该任务的操作列表的开头。

Task doLastClosure行动)

将给定的闭包添加到该任务操作列表的末尾。执行时,闭包将作为参数传递给该任务。

Task doLastString动作名称,动作)Action<? super Task>

将给定添加Action到该任务操作列表的末尾。

Task doLast(行动)Action<? super Task>

将给定添加Action到该任务操作列表的末尾。

void doNotTrackStateString原因不是跟踪状态)

不跟踪任务的状态。

指示 Gradle 将任务视为未跟踪。

Task finalizedByObject...路径)

为此任务添加给定的终结器任务。

task taskY {
    finalizedBy "taskX"
}

有关可用于指定终结器任务的对象类型的描述,请参阅此处。

boolean hasPropertyString属性名称)

确定此任务是否具有给定属性。有关任务可用属性的详细信息,请参阅此处。

Task mustRunAfterObject...路径)

指定此任务必须在所有提供的任务之后运行。

task taskY {
    mustRunAfter "taskX"
}

对于每个提供的任务,此操作添加任务“排序”,并且不指定任务之间的“依赖关系”。因此,仍然可以在不首先执行示例中的“taskX”的情况下执行“taskY”。

有关可用于指定排序关系的对象类型的描述,请参阅此处。

void onlyIf(Closure仅If关闭)

仅当给定的闭包返回 true 时才执行任务。闭包将在任务执行时评估,而不是在配置期间评估。闭包将传递一个参数,即此任务。如果闭包返回 false,则任务将被跳过。

您可以添加多个此类谓词。如果任何谓词返回 false,则跳过该任务。

典型用法:myTask.onlyIf { isProductionEnvironment() }

void onlyIfString仅如果原因,仅如果规格)Spec<? super Task>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

仅当满足给定规范时才执行任务。该规范将在任务执行时而不是配置期间进行评估。如果不满足 Spec,则任务将被跳过。

您可以添加多个此类谓词。如果任何谓词返回 false,则跳过该任务。

典型用法(来自 Java):

myTask.onlyIf("run only in production environment", new Spec<Task>() {
   boolean isSatisfiedBy(Task task) {
      return isProductionEnvironment();
   }
});

void onlyIf(仅限如果规格)Spec<? super Task>

仅当满足给定规范时才执行任务。该规范将在任务执行时而不是配置期间进行评估。如果不满足 Spec,则任务将被跳过。

您可以添加多个此类谓词。如果任何谓词返回 false,则跳过该任务。

典型用法(来自 Java):

myTask.onlyIf(new Spec<Task>() {
   boolean isSatisfiedBy(Task task) {
      return isProductionEnvironment();
   }
});

Object propertyString属性名称)

返回此任务的给定属性的值。该方法按如下方式定位属性:

  1. 如果此任务对象具有给定名称的属性,则返回该属性的值。
  2. 如果此任务具有给定名称的扩展名,则返回该扩展名。
  3. 如果此任务的约定对象具有给定名称的属性,则返回该属性的值。
  4. 如果此任务具有给定名称的额外属性,则返回该属性的值。
  5. 如果没有找到,则抛出MissingPropertyException

void setPropertyString名称,Object值)

设置此任务的属性。此方法在以下位置搜索具有给定名称的属性,并在找到该属性的第一个位置设置该属性。

  1. 任务对象本身。例如,enabled项目属性。
  2. 任务的约定对象。
  3. 任务的额外属性。

如果未找到该属性,MissingPropertyException则会抛出 a。

TaskDependency shouldRunAfterObject...路径)

指定此任务应在所有提供的任务之后运行。

task taskY {
    shouldRunAfter "taskX"
}

对于每个提供的任务,此操作添加任务“排序”,并且不指定任务之间的“依赖关系”。因此,仍然可以在不首先执行示例中的“taskX”的情况下执行“taskY”。

有关可用于指定排序关系的对象类型的描述,请参阅此处。

void usesService(服务)Provider<? extends BuildService<?>>

注册BuildService此任务使用的 a,以便 BuildServiceRegistration.getMaxParallelUsages()可以兑现。