# Wrapper

@DisableCachingByDefault(because = "Updating the wrapper is not worth caching")
abstract class Wrapper : DefaultTask(source)

Generates scripts (for *nix and windows) which allow you to build your project with Gradle, without having to install Gradle.

When a user executes a wrapper script the first time, the script downloads and installs the appropriate Gradle distribution and runs the build against this downloaded distribution. Any installed Gradle distribution is ignored when using the wrapper scripts.

The scripts generated by this task are intended to be committed to your version control system. This task also generates a small `gradle-wrapper.jar` bootstrap JAR file and properties file which should also be committed to your VCS. The scripts delegate to this JAR.

## Constructors

Wrapper
Link copied to clipboard
constructor()

## Types

DistributionType
Link copied to clipboard
enum DistributionType
Specifies the Gradle distribution type.
PathBase
Link copied to clipboard
enum PathBase
Specifies how the wrapper path should be interpreted.

## Properties

DEFAULT_DISTRIBUTION_PARENT_NAME
Link copied to clipboard
val DEFAULT_DISTRIBUTION_PARENT_NAME: String = "wrapper/dists"
description
Link copied to clipboard
@get:Nullable
open var description: @Nullable String
enabled
Link copied to clipboard
open var enabled: Boolean
extra
Link copied to clipboard
val ExtensionAware.extra: ExtraPropertiesExtension

The extra properties extension in this object's extension container.

group
Link copied to clipboard
@get:Nullable
open var group: @Nullable String
impliesSubProjects
Link copied to clipboard
open var impliesSubProjects: Boolean
state
Link copied to clipboard
val state: TaskStateInternal
TASK_ACTION
Link copied to clipboard
val TASK_ACTION: String = "action"
TASK_CONSTRUCTOR_ARGS
Link copied to clipboard
val TASK_CONSTRUCTOR_ARGS: String = "constructorArgs"
Constructor arguments for the Task
TASK_DEPENDS_ON
Link copied to clipboard
val TASK_DEPENDS_ON: String = "dependsOn"
TASK_DESCRIPTION
Link copied to clipboard
val TASK_DESCRIPTION: String = "description"
TASK_GROUP
Link copied to clipboard
val TASK_GROUP: String = "group"
TASK_NAME
Link copied to clipboard
val TASK_NAME: String = "name"
TASK_OVERWRITE
Link copied to clipboard
val TASK_OVERWRITE: String = "overwrite"
TASK_TYPE
Link copied to clipboard
val TASK_TYPE: String = "type"
timeout
Link copied to clipboard
val timeout: Property<Duration>

## Functions

acceptServiceReferences
Link copied to clipboard
open fun acceptServiceReferences(serviceReferences: Set<ServiceReferenceSpec>)
appendParallelSafeAction
Link copied to clipboard
open fun appendParallelSafeAction(action: Action<in Task>)
compareTo
Link copied to clipboard
open fun compareTo(otherTask: Task): Int
open fun compareTo(otherTask: Task): Int
configure
Link copied to clipboard
open fun configure(closure: Closure): Task
abstract fun configure(configureClosure: Closure): Task
open fun configure(closure: Closure): Task
Applies the statements of the closure against this task object.
abstract fun configure(cl: Closure): T
configure
Link copied to clipboard
inline fun <T : Any> ExtensionAware.configure(noinline configuration: T.() -> Unit)

Executes the given configuration block against the extension of the specified type.

dependsOn
Link copied to clipboard
open fun dependsOn(paths: Array<Any>): Task
open fun dependsOn(paths: Array<Any>): Task
Adds the given dependencies to this task.
doFirst
Link copied to clipboard
open fun doFirst(action: Closure): Task
abstract fun doFirst(@DelegatesTo(value = Task::class) action: Closure): Task
Adds the given closure to the beginning of this task's action list.
open fun doFirst(action: Action<in Task>): Task
open fun doFirst(actionName: String, action: Action<in Task>): Task
open fun doFirst(action: Action<in Task>): Task
Adds the given Action to the beginning of this task's action list.
doLast
Link copied to clipboard
open fun doLast(action: Closure): Task
abstract fun doLast(@DelegatesTo(value = Task::class) action: Closure): Task
Adds the given closure to the end of this task's action list.
open fun doLast(action: Action<in Task>): Task
open fun doLast(actionName: String, action: Action<in Task>): Task
open fun doLast(action: Action<in Task>): Task
Adds the given Action to the end of this task's action list.
doNotTrackState
Link copied to clipboard
abstract fun doNotTrackState(reasonNotToTrackState: String)
open fun doNotTrackState(reasonNotToTrackState: String)
Do not track the state of the task.
doNotTrackStateIf
Link copied to clipboard
open fun doNotTrackStateIf(reason: String, spec: Spec<in TaskInternal>)
finalizedBy
Link copied to clipboard
open fun finalizedBy(paths: Array<Any>): Task
open fun finalizedBy(paths: Array<Any>): Task
Adds the given finalizer tasks for this task.
getActions
Link copied to clipboard
open fun getActions(): List<Action<in Task>>
open fun getActions(): List<Action<in Task>>
Returns the sequence of Action objects which will be executed by this task, in the order of execution.
getAnt
Link copied to clipboard
open fun getAnt(): AntBuilder
open fun getAnt(): AntBuilder
Returns the `AntBuilder` for this task.
getArchiveBase
Link copied to clipboard
@Input
abstract fun getArchiveBase(): Property<Wrapper.PathBase>
The archive base specifies whether the unpacked wrapper distribution should be stored in the project or in the gradle user home dir.
getArchivePath
Link copied to clipboard
@Input
abstract fun getArchivePath(): Property<String>
Returns the path where the gradle distributions archive should be saved (i.e.
getAsDynamicObject
Link copied to clipboard
open fun getAsDynamicObject(): DynamicObject
getAvailableDistributionTypes
Link copied to clipboard
@Internal
open fun getAvailableDistributionTypes(): List<Wrapper.DistributionType>
The list of available gradle distribution types.
getBatchScript
Link copied to clipboard
@OutputFile
open fun getBatchScript(): Provider<RegularFile>
Returns the file to write the wrapper batch script to.
getDependsOn
Link copied to clipboard
open fun getDependsOn(): Set<Any>
open fun getDependsOn(): Set<Any>
Returns the dependencies of this task.
getDestroyables
Link copied to clipboard
open fun getDestroyables(): TaskDestroyables
open fun getDestroyables(): TaskDestroyables
Returns the destroyables of this task.
getDidWork
Link copied to clipboard
open fun getDidWork(): Boolean
open fun getDidWork(): Boolean
Checks if the task actually did any work.
getDistributionBase
Link copied to clipboard
@Input
abstract fun getDistributionBase(): Property<Wrapper.PathBase>
The distribution base specifies whether the unpacked wrapper distribution should be stored in the project or in the gradle user home dir.
getDistributionPath
Link copied to clipboard
@Input
abstract fun getDistributionPath(): Property<String>
Returns the path where the gradle distributions needed by the wrapper are unzipped.
getDistributionSha256Sum
Link copied to clipboard
@Input
@Optional
abstract fun getDistributionSha256Sum(): Property<String>
The SHA-256 hash sum of the gradle distribution.
getDistributionType
Link copied to clipboard
@Input
abstract fun getDistributionType(): Property<Wrapper.DistributionType>
Returns the type of the Gradle distribution to be used by the wrapper.
getDistributionUrl
Link copied to clipboard
@Input
abstract fun getDistributionUrl(): Property<String>
The URL to download the gradle distribution from.
getExtensions
Link copied to clipboard
open fun getExtensions(): ExtensionContainer
open fun getExtensions(): ExtensionContainer
The container of extensions.
getFinalizedBy
Link copied to clipboard
open fun getFinalizedBy(): TaskDependency
open fun getFinalizedBy(): TaskDependency
Returns tasks that finalize this task.
getGradleVersion
Link copied to clipboard
@Input
abstract fun getGradleVersion(): Property<String>
The version of the gradle distribution required by the wrapper.
getIdentityPath
Link copied to clipboard
open fun getIdentityPath(): Path
getInputs
Link copied to clipboard
open fun getInputs(): TaskInputsInternal
@Internal
abstract fun getInputs(): TaskInputs
open fun getInputs(): TaskInputsInternal
Returns the inputs of this task.
getJarFile
Link copied to clipboard
@OutputFile
abstract fun getJarFile(): RegularFileProperty
Returns the file to write the wrapper jar file to.
getLifecycleDependencies
Link copied to clipboard
open fun getLifecycleDependencies(): TaskDependencyInternal
abstract fun getLifecycleDependencies(): TaskDependency
getLocalState
Link copied to clipboard
open fun getLocalState(): TaskLocalState
open fun getLocalState(): TaskLocalState
Returns the local state of this task.
getLogger
Link copied to clipboard
open fun getLogger(): Logger
open fun getLogger(): Logger
Returns the logger for this task.
getLogging
Link copied to clipboard
open fun getLogging(): LoggingManager
open fun getLogging(): LoggingManager
Returns the org.gradle.api.logging.LoggingManager which can be used to receive logging and to control the standard output/error capture for this task.
getMustRunAfter
Link copied to clipboard
open fun getMustRunAfter(): TaskDependency
open fun getMustRunAfter(): TaskDependency
Returns tasks that this task must run after.
getName
Link copied to clipboard
open fun getName(): String
open fun getName(): String
Returns the name of this task.
getNetworkTimeout
Link copied to clipboard
@Input
@Optional
abstract fun getNetworkTimeout(): Property<Integer>
The network timeout specifies how many ms to wait for when the wrapper is performing network operations, such as downloading the wrapper jar.
getOnlyIf
Link copied to clipboard
open fun getOnlyIf(): Spec<in TaskInternal>
getOutputs
Link copied to clipboard
open fun getOutputs(): TaskOutputsInternal
@Internal
abstract fun getOutputs(): TaskOutputs
open fun getOutputs(): TaskOutputsInternal
Returns the outputs of this task.
getPath
Link copied to clipboard
open fun getPath(): String
open fun getPath(): String
Returns the path of the task, which is a fully qualified name for the task.
getProject
Link copied to clipboard
open fun getProject(): Project
open fun getProject(): Project
Returns the Project which this task belongs to.
getPropertiesFile
Link copied to clipboard
@OutputFile
open fun getPropertiesFile(): Provider<RegularFile>
Returns the file to write the wrapper properties to.
getReasonNotToTrackState
Link copied to clipboard
open fun getReasonNotToTrackState(): Optional<String>
getReasonsNotToTrackState
Link copied to clipboard
open fun getReasonsNotToTrackState(): Set<String>
getReasonTaskIsIncompatibleWithConfigurationCache
Link copied to clipboard
open fun getReasonTaskIsIncompatibleWithConfigurationCache(): Optional<String>
getRequiredServices
Link copied to clipboard
open fun getRequiredServices(): TaskRequiredServices
getRetries
Link copied to clipboard
@Input
@Incubating
@Optional
abstract fun getRetries(): Property<Integer>
The number of retries to attempt when downloading the Gradle distribution.
getRetryBackOffMs
Link copied to clipboard
@Input
@Incubating
@Optional
abstract fun getRetryBackOffMs(): Property<Integer>
The initial back off in milliseconds to wait between download retries.
getScriptFile
Link copied to clipboard
@OutputFile
abstract fun getScriptFile(): RegularFileProperty
Returns the file to write the wrapper script to.
getSharedResources
Link copied to clipboard
open fun getSharedResources(): List<ResourceLock>
abstract fun getSharedResources(): List<out ResourceLock>
getShouldRunAfter
Link copied to clipboard
open fun getShouldRunAfter(): TaskDependency
open fun getShouldRunAfter(): TaskDependency
Returns tasks that this task should run after.
getStandardOutputCapture
Link copied to clipboard
open fun getStandardOutputCapture(): StandardOutputCapture
getState
Link copied to clipboard
@Internal
abstract fun getState(): TaskState
Returns the execution state of this task.
getTaskActions
Link copied to clipboard
open fun getTaskActions(): List<InputChangesAwareTaskAction>
getTaskDependencies
Link copied to clipboard
open fun getTaskDependencies(): TaskDependencyInternal
@Internal
abstract fun getTaskDependencies(): TaskDependency
open fun getTaskDependencies(): TaskDependencyInternal
Returns a TaskDependency which contains all the tasks that this task depends on.
getTaskIdentity
Link copied to clipboard
open fun getTaskIdentity(): TaskIdentity<out Any>
getTemporaryDir
Link copied to clipboard
open fun getTemporaryDir(): File
open fun getTemporaryDir(): File
Returns a directory which this task can use to write temporary files to.
getTemporaryDirFactory
Link copied to clipboard
open fun getTemporaryDirFactory(): Factory<File>
getValidateDistributionUrl
Link copied to clipboard
@Incubating
@Input
abstract fun getValidateDistributionUrl(): Property<Boolean>
Indicates if this task will validate the distribution url that has been configured.
hasProperty
Link copied to clipboard
open fun hasProperty(propertyName: String): Boolean
open fun hasProperty(propertyName: String): Boolean
Determines if this task has the given property.
hasTaskActions
Link copied to clipboard
open fun hasTaskActions(): Boolean
injectIntoNewInstance
Link copied to clipboard
open fun <T : Task?> injectIntoNewInstance(project: ProjectInternal, identity: TaskIdentity<T>, factory: Callable<T>): T
isCompatibleWithConfigurationCache
Link copied to clipboard
open fun isCompatibleWithConfigurationCache(): Boolean
isEnabled
Link copied to clipboard
open fun isEnabled(): Boolean
isHasCustomActions
Link copied to clipboard
open fun isHasCustomActions(): Boolean
mustRunAfter
Link copied to clipboard
open fun mustRunAfter(paths: Array<Any>): Task
open fun mustRunAfter(paths: Array<Any>): Task
Specifies that this task must run after all of the supplied tasks.
notCompatibleWithConfigurationCache
Link copied to clipboard
abstract fun notCompatibleWithConfigurationCache(reason: String)
open fun notCompatibleWithConfigurationCache(reason: String)
Specifies that this task is not compatible with the configuration cache.
onlyIf
Link copied to clipboard
open fun onlyIf(onlyIfClosure: Closure)
abstract fun onlyIf(onlyIfClosure: Closure<out Any>)
open fun onlyIf(onlyIfClosure: Closure)
Execute the task only if the given closure returns true.
open fun onlyIf(spec: Spec<in Task>)
open fun onlyIf(onlyIfReason: String, spec: Spec<in Task>)
abstract fun onlyIf(onlyIfSpec: Spec<in Task>)
@Incubating
abstract fun onlyIf(onlyIfReason: String, onlyIfSpec: Spec<in Task>)
Execute the task only if the given spec is satisfied.
prependParallelSafeAction
Link copied to clipboard
open fun prependParallelSafeAction(action: Action<in Task>)
property
Link copied to clipboard
open fun property(propertyName: String): Any
open fun property(propertyName: String): Any
Returns the value of the given property of this task.
restoreOnlyIf
Link copied to clipboard
open fun restoreOnlyIf(onlyIf: Spec<in TaskInternal>)
restoreTaskActions
Link copied to clipboard
open fun restoreTaskActions(taskActions: List<InputChangesAwareTaskAction>)
setActions
Link copied to clipboard
open fun setActions(replacements: List<Action<in Task>>)
abstract fun setActions(actions: List<Action<in Task>>)
open fun setActions(replacements: List<Action<in Task>>)
Sets the sequence of Action objects which will be executed by this task.
setArchiveBase
Link copied to clipboard
open fun setArchiveBase(archiveBase: Wrapper.PathBase)
The archive base specifies whether the unpacked wrapper distribution should be stored in the project or in the gradle user home dir.
setArchivePath
Link copied to clipboard
open fun setArchivePath(archivePath: String)
Set's the path where the gradle distributions archive should be saved (i.e.
setDependsOn
Link copied to clipboard
open fun setDependsOn(dependsOn: Iterable<out Any>)
abstract fun setDependsOn(dependsOnTasks: Iterable<out Any>)
open fun setDependsOn(dependsOn: Iterable<out Any>)
Sets the dependencies of this task.
setDidWork
Link copied to clipboard
open fun setDidWork(didWork: Boolean)
open fun setDidWork(didWork: Boolean)
Sets whether the task actually did any work.
setDistributionBase
Link copied to clipboard
open fun setDistributionBase(distributionBase: Wrapper.PathBase)
The distribution base specifies whether the unpacked wrapper distribution should be stored in the project or in the gradle user home dir.
setDistributionPath
Link copied to clipboard
open fun setDistributionPath(distributionPath: String)
Sets the path where the gradle distributions needed by the wrapper are unzipped.
setDistributionSha256Sum
Link copied to clipboard
open fun setDistributionSha256Sum(@Nullable distributionSha256Sum: @Nullable String)
The SHA-256 hash sum of the gradle distribution.
setDistributionType
Link copied to clipboard
open fun setDistributionType(distributionType: Wrapper.DistributionType)
The type of the Gradle distribution to be used by the wrapper.
setDistributionUrl
Link copied to clipboard
open fun setDistributionUrl(url: String)
Sets the URL to download the gradle distribution from.
setFinalizedBy
Link copied to clipboard
open fun setFinalizedBy(finalizedByTasks: Iterable<out Any>)
abstract fun setFinalizedBy(finalizedBy: Iterable<out Any>)
open fun setFinalizedBy(finalizedByTasks: Iterable<out Any>)
Specifies the set of finalizer tasks for this task.
setGradleVersion
Link copied to clipboard
open fun setGradleVersion(gradleVersion: String)
Sets the version of the gradle distribution required by the wrapper.
setJarFile
Link copied to clipboard
open fun setJarFile(jarFile: File)
open fun setJarFile(jarFile: Any)
The file to write the wrapper jar file to.
setMustRunAfter
Link copied to clipboard
open fun setMustRunAfter(mustRunAfterTasks: Iterable<out Any>)
abstract fun setMustRunAfter(mustRunAfter: Iterable<out Any>)
open fun setMustRunAfter(mustRunAfterTasks: Iterable<out Any>)
Specifies the set of tasks that this task must run after.
setOnlyIf
Link copied to clipboard
open fun setOnlyIf(onlyIfClosure: Closure)
abstract fun setOnlyIf(onlyIfClosure: Closure<out Any>)
Execute the task only if the given closure returns true.
open fun setOnlyIf(spec: Spec<in Task>)
open fun setOnlyIf(onlyIfReason: String, spec: Spec<in Task>)
abstract fun setOnlyIf(onlyIfSpec: Spec<in Task>)
@Incubating
abstract fun setOnlyIf(onlyIfReason: String, onlyIfSpec: Spec<in Task>)
open fun setOnlyIf(spec: Spec<in Task>)
Execute the task only if the given spec is satisfied.
setProperty
Link copied to clipboard
open fun setProperty(name: String, value: Any)
open fun setProperty(name: String, value: Any)
Sets a property of this task.
setScriptFile
Link copied to clipboard
open fun setScriptFile(scriptFile: File)
open fun setScriptFile(scriptFile: Any)
The file to write the wrapper script to.
setShouldRunAfter
Link copied to clipboard
open fun setShouldRunAfter(shouldRunAfterTasks: Iterable<out Any>)
abstract fun setShouldRunAfter(shouldRunAfter: Iterable<out Any>)
open fun setShouldRunAfter(shouldRunAfterTasks: Iterable<out Any>)
Specifies the set of tasks that this task should run after.
shouldRunAfter
Link copied to clipboard
open fun shouldRunAfter(paths: Array<Any>): TaskDependency
open fun shouldRunAfter(paths: Array<Any>): TaskDependency
Specifies that this task should run after all of the supplied tasks.
the
Link copied to clipboard
inline fun <T : Any> ExtensionAware.the(): T

Returns the extension of the specified type.

fun <T : Any> ExtensionAware.the(extensionType: KClass<T>): T

Returns the extension of the specified extensionType.

usesService
Link copied to clipboard
open fun usesService(service: Provider<out BuildService<out Any>>)
open fun usesService(service: Provider<out BuildService<out Any>>)
Registers a BuildService that is used by this task so its constraint on parallel execution can be honored.