Class AbstractArchiveTask
- All Implemented Interfaces:
Comparable<Task>
,ContentFilterable
,CopyProcessingSpec
,CopySourceSpec
,CopySpec
,org.gradle.api.internal.DynamicObjectAware
,org.gradle.api.internal.file.copy.CopySpecSource
,org.gradle.api.internal.IConventionAware
,org.gradle.api.internal.TaskInternal
,Named
,ExtensionAware
,Task
,PatternFilterable
,Configurable<Task>
AbstractArchiveTask
is the base class for all archive tasks.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.gradle.api.Named
Named.Namer
-
Field Summary
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.gradle.api.internal.file.copy.CopyActionExecuter
Returns the appendix part of the archive name, if any.Returns the base name of the archive.Returns the classifier part of the archive name, if any.Returns the extension part of the archive name.TheRegularFile
where the archive is constructed.Returns the archive name.Returns the version part of the archive name.The directory where the archive will be placed.protected abstract FileSystemOperations
Specifies the destination directory *inside* the archive for the files.Creates and configures a childCopySpec
with a destination directory *inside* the archive for the files.Creates and configures a childCopySpec
with a destination directory *inside* the archive for the files.boolean
Specifies whether file timestamps should be preserved in the archive.boolean
Specifies whether to enforce a reproducible file order when reading files from directories.void
setPreserveFileTimestamps
(boolean preserveFileTimestamps) Specifies whether file timestamps should be preserved in the archive.void
setReproducibleFileOrder
(boolean reproducibleFileOrder) Specifies whether to enforce a reproducible file order when reading files from directories.void
Sets the directory and file permissions for archived files to be read from the file system.Methods inherited from class org.gradle.api.tasks.AbstractCopyTask
copy, createCopyAction, createRootSpec, dirPermissions, eachFile, eachFile, exclude, exclude, exclude, exclude, expand, expand, filePermissions, filesMatching, filesMatching, filesNotMatching, filesNotMatching, filter, filter, filter, filter, from, from, from, getDirectoryFileTreeFactory, getDirPermissions, getDocumentationRegistry, getDuplicatesStrategy, getExcludes, getFileLookup, getFilePermissions, getFileResolver, getFileSystem, getFilteringCharset, getIncludeEmptyDirs, getIncludes, getInstantiator, getMainSpec, getObjectFactory, getPropertyFactory, getRootSpec, getSource, include, include, include, include, isCaseSensitive, rename, rename, rename, rename, setCaseSensitive, setDuplicatesStrategy, setExcludes, setFilteringCharset, setIncludeEmptyDirs, setIncludes, with
Methods inherited from class org.gradle.api.internal.ConventionTask
conventionMapping, conventionMapping, getConventionMapping
Methods inherited from class org.gradle.api.DefaultTask
compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService
Methods inherited from class org.gradle.api.internal.AbstractTask
acceptServiceReferences, appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjects
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.gradle.api.Task
doNotTrackState, notCompatibleWithConfigurationCache
-
Constructor Details
-
AbstractArchiveTask
public AbstractArchiveTask()
-
-
Method Details
-
getFileSystemOperations
-
getArchiveFileName
Returns the archive name. If the name has not been explicitly set, the pattern for the name is:[archiveBaseName]-[archiveAppendix]-[archiveVersion]-[archiveClassifier].[archiveExtension]
- Returns:
- the archive name.
- Since:
- 5.1
-
getArchiveFile
TheRegularFile
where the archive is constructed. The path is simply thedestinationDirectory
plus thearchiveFileName
.- Returns:
- a
RegularFile
object with the path to the archive - Since:
- 5.1
-
getDestinationDirectory
The directory where the archive will be placed.- Since:
- 5.1
-
getArchiveBaseName
Returns the base name of the archive.- Returns:
- the base name. Internal property may be null.
- Since:
- 5.1
-
getArchiveAppendix
Returns the appendix part of the archive name, if any.- Returns:
- the appendix. May be null
- Since:
- 5.1
-
getArchiveVersion
Returns the version part of the archive name.- Returns:
- the version. Internal property may be null.
- Since:
- 5.1
-
getArchiveExtension
Returns the extension part of the archive name.- Since:
- 5.1
-
getArchiveClassifier
Returns the classifier part of the archive name, if any.- Returns:
- The classifier. Internal property may be null.
- Since:
- 5.1
-
into
Specifies the destination directory *inside* the archive for the files. The destination is evaluated as perProject.file(Object)
. Don't mix it up withgetDestinationDirectory()
which specifies the output directory for the archive.- Specified by:
into
in interfaceCopyProcessingSpec
- Specified by:
into
in interfaceCopySpec
- Overrides:
into
in classAbstractCopyTask
- Parameters:
destPath
- destination directory *inside* the archive for the files- Returns:
- this
-
into
Creates and configures a childCopySpec
with a destination directory *inside* the archive for the files. The destination is evaluated as perProject.file(Object)
. Don't mix it up withgetDestinationDirectory()
which specifies the output directory for the archive.- Specified by:
into
in interfaceCopySpec
- Overrides:
into
in classAbstractCopyTask
- Parameters:
destPath
- destination directory *inside* the archive for the filesconfigureClosure
- The closure to use to configure the childCopySpec
.- Returns:
- this
-
into
Creates and configures a childCopySpec
with a destination directory *inside* the archive for the files. The destination is evaluated as perProject.file(Object)
. Don't mix it up withgetDestinationDirectory()
which specifies the output directory for the archive.- Specified by:
into
in interfaceCopySpec
- Overrides:
into
in classAbstractCopyTask
- Parameters:
destPath
- destination directory *inside* the archive for the filescopySpec
- The closure to use to configure the childCopySpec
.- Returns:
- this
-
isPreserveFileTimestamps
Specifies whether file timestamps should be preserved in the archive.If
false
this ensures that archive entries have the same time for builds between different machines, Java versions and operating systems.- Returns:
true
if file timestamps should be preserved for archive entries- Since:
- 3.4
-
setPreserveFileTimestamps
public void setPreserveFileTimestamps(boolean preserveFileTimestamps) Specifies whether file timestamps should be preserved in the archive.If
false
this ensures that archive entries have the same time for builds between different machines, Java versions and operating systems.- Parameters:
preserveFileTimestamps
-true
if file timestamps should be preserved for archive entries- Since:
- 3.4
-
isReproducibleFileOrder
Specifies whether to enforce a reproducible file order when reading files from directories.Gradle will then walk the directories on disk which are part of this archive in a reproducible order independent of file systems and operating systems. This helps Gradle reliably produce byte-for-byte reproducible archives.
- Returns:
true
if the files should read from disk in a reproducible order.- Since:
- 3.4
-
setReproducibleFileOrder
public void setReproducibleFileOrder(boolean reproducibleFileOrder) Specifies whether to enforce a reproducible file order when reading files from directories.Gradle will then walk the directories on disk which are part of this archive in a reproducible order independent of file systems and operating systems. This helps Gradle reliably produce byte-for-byte reproducible archives.
- Parameters:
reproducibleFileOrder
-true
if the files should read from disk in a reproducible order.- Since:
- 3.4
-
useFileSystemPermissions
Sets the directory and file permissions for archived files to be read from the file system.Any subsequent configuration of
AbstractCopyTask.getDirPermissions()
orAbstractCopyTask.getFilePermissions()
will override this setting, but only for the specifically configured property.Note: On Windows, file system permissions are not supported, and permissions will be set to
755
for directories and644
for files.This setting can also be applied to all archive tasks of the build via
org.gradle.archives.use-file-system-permissions=true
property.- Since:
- 9.0.0
-
createCopyActionExecuter
protected org.gradle.api.internal.file.copy.CopyActionExecuter createCopyActionExecuter()- Overrides:
createCopyActionExecuter
in classAbstractCopyTask
-