Movatterモバイル変換


[0]ホーム

URL:


Copy

API Documentation:Copy
Known Subtypes:
ProcessResources

Copies files into a destination directory. This task can also rename and filter files as it copies. The taskimplementsCopySpec for specifying what to copy.

Examples:

task copyDocs(type: Copy) {    from'src/main/doc'    into'build/target/doc'}//for Ant filterimport org.apache.tools.ant.filters.ReplaceTokens//for including in the copy taskdef dataContent = copySpec {    from'src/data'    include'*.data'}task initConfig(type: Copy) {    from('src/main/config') {        include'**/*.properties'        include'**/*.xml'        filter(ReplaceTokens, tokens: [version:'2.3.1'])    }    from('src/main/config') {        exclude'**/*.properties','**/*.xml'    }    from('src/main/languages') {        rename'EN_US_(.*)','$1'    }    into'build/target/config'    exclude'**/*.bak'    includeEmptyDirs = false    with dataContent}

Properties

PropertyDescription
caseSensitive

Specifies whether case-sensitive pattern matching should be used.

destinationDir

The directory to copy files into.

dirPermissions

Property for configuring directory access permissions.For details seeConfigurableFilePermissions.

duplicatesStrategy

The strategy to use when trying to copy more than one file to the same destination.

excludes

The set of exclude patterns.

filePermissions

Property for configuring file access permissions.For details seeConfigurableFilePermissions.

includeEmptyDirs

Tells if empty target directories will be included in the copy.

includes

The set of include patterns.

source

The source files for this task.

Methods

MethodDescription
eachFile(closure)

Adds an action to be applied to each file as it about to be copied into its destination. The given closure iscalled with aFileCopyDetails as its parameter. Actions are executed in the orderadded, and are inherited from the parent spec.

eachFile(action)

Adds an action to be applied to each file as it is about to be copied into its destination. The action can changethe destination path of the file, filter the contents of the file, or exclude the file from the result entirely.Actions are executed in the order added, and are inherited from the parent spec.

exclude(excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs.The given closure is passed aFileTreeElement as its parameter. The closure should return true or false. Example:

exclude(excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

exclude(excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

exclude(excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

expand(properties)

Expands property references in each file as it is copied. More specifically, each file is transformed usingGroovy'sSimpleTemplateEngine. This means you can use simple property references, such as$property or${property} in the file. You can also include arbitrary Groovy code in thefile, such as${version ?: 'unknown'} or${classpath*.name.join(' ')}

expand(properties, action)

Expands property references in each file as it is copied. More specifically, each file is transformed usingGroovy'sSimpleTemplateEngine. This means you can use simple property references, such as$property or${property} in the file. You can also include arbitrary Groovy code in thefile, such as${version ?: 'unknown'} or${classpath*.name.join(' ')}. The templateengine can be configured with the provided action.

filesMatching(patterns, action)

Configure theFileCopyDetails for each file whose path matches any of the specified Ant-style patterns.This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.

filesMatching(pattern, action)

Configure theFileCopyDetails for each file whose path matches the specified Ant-style pattern.This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.

filesNotMatching(patterns, action)

Configure theFileCopyDetails for each file whose path does not match any of the specifiedAnt-style patterns. This is equivalent to using eachFile() and selectively applying a configuration based on thefile's path.

filesNotMatching(pattern, action)

Configure theFileCopyDetails for each file whose path does not match the specifiedAnt-style pattern. This is equivalent to using eachFile() and selectively applying a configuration based on thefile's path.

filter(closure)

Adds a content filter based on the provided closure. The Closure will be called with each line (stripped of lineendings) and should return a String to replace the line ornull to remove the line. If every line isremoved, the result will be an empty file, not an absent one.

filter(filterType)

Adds a content filter to be used during the copy. Multiple calls to filter, add additional filters to thefilter chain. Each filter should implementjava.io.FilterReader. Includeorg.apache.tools.ant.filters.* for access to all the standard Ant filters.

filter(properties, filterType)

Adds a content filter to be used during the copy. Multiple calls to filter, add additional filters to thefilter chain. Each filter should implementjava.io.FilterReader. Includeorg.apache.tools.ant.filters.* for access to all the standard Ant filters.

filter(transformer)

Adds a content filter based on the provided transformer. The Closure will be called with each line (stripped of lineendings) and should return a String to replace the line ornull to remove the line. If every line isremoved, the result will be an empty file, not an absent one.

from(sourcePath, c)

Specifies the source files or directories for a copy and creates a childCopySourceSpec. The given sourcepath is evaluated as perProject.files(java.lang.Object[]) .

from(sourcePath, configureAction)

Specifies the source files or directories for a copy and creates a childCopySpec. The given sourcepath is evaluated as perProject.files(java.lang.Object[]) .

from(sourcePaths)

Specifies source files or directories for a copy. The given paths are evaluated as perProject.files(java.lang.Object[]).

include(includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. The given closure is passed aFileTreeElement as its parameter.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns or specs to be included.

include(includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns to be processed.

include(includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns to be processed.

include(includeSpec)

Adds an include spec. This method may be called multiple times to append new specs.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns or specs to be included.

into(destDir)

Specifies the destination directory for a copy. The destination is evaluated as perProject.file(java.lang.Object).

into(destPath, configureClosure)

Creates and configures a childCopySpec with the given destination path.The destination is evaluated as perProject.file(java.lang.Object).

into(destPath, copySpec)

Creates and configures a childCopySpec with the given destination path.The destination is evaluated as perProject.file(java.lang.Object).

rename(closure)

Renames a source file. The closure will be called with a single parameter, the name of the file.The closure should return a String object with a new target name. The closure may return null,in which case the original name will be used.

rename(sourceRegEx, replaceWith)

Renames files based on a regular expression. Uses java.util.regex type of regular expressions. Note that thereplace string should use the '$1' syntax to refer to capture groups in the source regular expression. Filesthat do not match the source regular expression will be copied with the original name.

rename(sourceRegEx, replaceWith)

Renames files based on a regular expression. SeeCopyProcessingSpec.rename(java.lang.String, java.lang.String).

rename(renamer)

Renames a source file. The function will be called with a single parameter, the name of the file.The function should return a new target name. The function may return null,in which case the original name will be used.

with(sourceSpecs)

Adds the given specs as a child of this spec.

Script blocks

No script blocks

Property details

booleancaseSensitive

Specifies whether case-sensitive pattern matching should be used.

Default:
true

FiledestinationDir

The directory to copy files into.

Default:
null

Property for configuring directory access permissions.For details seeConfigurableFilePermissions.

Default:
null

DuplicatesStrategyduplicatesStrategy

The strategy to use when trying to copy more than one file to the same destination.

The value can be set with a case insensitive string of the enum value (e.g.'exclude' forDuplicatesStrategy.EXCLUDE).

This strategy can be overridden for individual files by usingCopySpec.eachFile(org.gradle.api.Action) orCopySpec.filesMatching(java.lang.String, org.gradle.api.Action).

Default:
DuplicatesStrategy.INHERIT

Set<String>excludes

The set of exclude patterns.

Default:
[]

Property for configuring file access permissions.For details seeConfigurableFilePermissions.

Default:
null

booleanincludeEmptyDirs

Tells if empty target directories will be included in the copy.

Default:
true

Set<String>includes

The set of include patterns.

Default:
[]

FileCollectionsource (read-only)

The source files for this task.

Default:
[]

Method details

AbstractCopyTaskeachFile(Closure closure)

Adds an action to be applied to each file as it about to be copied into its destination. The given closure iscalled with aFileCopyDetails as its parameter. Actions are executed in the orderadded, and are inherited from the parent spec.

AbstractCopyTaskeachFile(Action<? superFileCopyDetails> action)

Adds an action to be applied to each file as it is about to be copied into its destination. The action can changethe destination path of the file, filter the contents of the file, or exclude the file from the result entirely.Actions are executed in the order added, and are inherited from the parent spec.

AbstractCopyTaskexclude(Closure excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs.The given closure is passed aFileTreeElement as its parameter. The closure should return true or false. Example:

copySpec {  from'source'  into'destination'//an example of excluding files from certain configuration:  exclude { it.file in configurations.someConf.files }}

If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

AbstractCopyTaskexclude(Iterable<String> excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

AbstractCopyTaskexclude(String... excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

Adds an exclude spec. This method may be called multiple times to append new specs.If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not matchany exclude pattern to be processed.

AbstractCopyTaskexpand(Map<String, ?> properties)

Expands property references in each file as it is copied. More specifically, each file is transformed usingGroovy'sSimpleTemplateEngine. This means you can use simple property references, such as$property or${property} in the file. You can also include arbitrary Groovy code in thefile, such as${version ?: 'unknown'} or${classpath*.name.join(' ')}

Note that all escape sequences (\n,\t,\\, etc) are converted to the symbolsthey represent, so, for example,\n becomes newline. If this is undesirable thenContentFilterable.expand(java.util.Map, org.gradle.api.Action)should be used to disable this behavior.

AbstractCopyTaskexpand(Map<String, ?> properties,Action<? superExpandDetails> action)

Expands property references in each file as it is copied. More specifically, each file is transformed usingGroovy'sSimpleTemplateEngine. This means you can use simple property references, such as$property or${property} in the file. You can also include arbitrary Groovy code in thefile, such as${version ?: 'unknown'} or${classpath*.name.join(' ')}. The templateengine can be configured with the provided action.

Note that by default all escape sequences (\n,\t,\\, etc) are converted to the symbolsthey represent, so, for example,\n becomes newline. This behavior is controlled byExpandDetails.getEscapeBackslash() property. It should be set totrue to disable escape sequencesconversion:

expand(one:'1', two:2) {    escapeBackslash = true}

AbstractCopyTaskfilesMatching(Iterable<String> patterns,Action<? superFileCopyDetails> action)

Configure theFileCopyDetails for each file whose path matches any of the specified Ant-style patterns.This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.

AbstractCopyTaskfilesMatching(String pattern,Action<? superFileCopyDetails> action)

Configure theFileCopyDetails for each file whose path matches the specified Ant-style pattern.This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.

AbstractCopyTaskfilesNotMatching(Iterable<String> patterns,Action<? superFileCopyDetails> action)

Configure theFileCopyDetails for each file whose path does not match any of the specifiedAnt-style patterns. This is equivalent to using eachFile() and selectively applying a configuration based on thefile's path.

AbstractCopyTaskfilesNotMatching(String pattern,Action<? superFileCopyDetails> action)

Configure theFileCopyDetails for each file whose path does not match the specifiedAnt-style pattern. This is equivalent to using eachFile() and selectively applying a configuration based on thefile's path.

AbstractCopyTaskfilter(Closure closure)

Adds a content filter based on the provided closure. The Closure will be called with each line (stripped of lineendings) and should return a String to replace the line ornull to remove the line. If every line isremoved, the result will be an empty file, not an absent one.

AbstractCopyTaskfilter(Class<? extendsFilterReader> filterType)

Adds a content filter to be used during the copy. Multiple calls to filter, add additional filters to thefilter chain. Each filter should implementjava.io.FilterReader. Includeorg.apache.tools.ant.filters.* for access to all the standard Ant filters.

Examples:

filter(StripJavaComments)filter(com.mycompany.project.CustomFilter)

AbstractCopyTaskfilter(Map<String, ?> properties,Class<? extendsFilterReader> filterType)

Adds a content filter to be used during the copy. Multiple calls to filter, add additional filters to thefilter chain. Each filter should implementjava.io.FilterReader. Includeorg.apache.tools.ant.filters.* for access to all the standard Ant filters.

Filter properties may be specified using groovy map syntax.

Examples:

filter(HeadFilter, lines:25, skip:2)filter(ReplaceTokens, tokens:[copyright:'2009', version:'2.3.1'])

Adds a content filter based on the provided transformer. The Closure will be called with each line (stripped of lineendings) and should return a String to replace the line ornull to remove the line. If every line isremoved, the result will be an empty file, not an absent one.

AbstractCopyTaskfrom(Object sourcePath,Closure c)

Specifies the source files or directories for a copy and creates a childCopySourceSpec. The given sourcepath is evaluated as perProject.files(java.lang.Object[]) .

AbstractCopyTaskfrom(Object sourcePath,Action<? superCopySpec> configureAction)

Specifies the source files or directories for a copy and creates a childCopySpec. The given sourcepath is evaluated as perProject.files(java.lang.Object[]) .

AbstractCopyTaskfrom(Object... sourcePaths)

Specifies source files or directories for a copy. The given paths are evaluated as perProject.files(java.lang.Object[]).

AbstractCopyTaskinclude(Closure includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. The given closure is passed aFileTreeElement as its parameter.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns or specs to be included.

AbstractCopyTaskinclude(Iterable<String> includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns to be processed.

AbstractCopyTaskinclude(String... includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiplepatterns may be specified in a single call.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns to be processed.

Adds an include spec. This method may be called multiple times to append new specs.If includes are not provided, then all files in this container will be included. If includes are provided, then afile must match at least one of the include patterns or specs to be included.

Specifies the destination directory for a copy. The destination is evaluated as perProject.file(java.lang.Object).

AbstractCopyTaskinto(Object destPath,Closure configureClosure)

Creates and configures a childCopySpec with the given destination path.The destination is evaluated as perProject.file(java.lang.Object).

CopySpecinto(Object destPath,Action<? superCopySpec> copySpec)

Creates and configures a childCopySpec with the given destination path.The destination is evaluated as perProject.file(java.lang.Object).

AbstractCopyTaskrename(Closure closure)

Renames a source file. The closure will be called with a single parameter, the name of the file.The closure should return a String object with a new target name. The closure may return null,in which case the original name will be used.

AbstractCopyTaskrename(String sourceRegEx,String replaceWith)

Renames files based on a regular expression. Uses java.util.regex type of regular expressions. Note that thereplace string should use the '$1' syntax to refer to capture groups in the source regular expression. Filesthat do not match the source regular expression will be copied with the original name.

Example:

rename'(.*)_OEM_BLUE_(.*)','$1$2'

would map the file 'style_OEM_BLUE_.css' to 'style.css'

AbstractCopyTaskrename(Pattern sourceRegEx,String replaceWith)

Renames files based on a regular expression. SeeCopyProcessingSpec.rename(java.lang.String, java.lang.String).

Renames a source file. The function will be called with a single parameter, the name of the file.The function should return a new target name. The function may return null,in which case the original name will be used.

CopySpecwith(CopySpec... sourceSpecs)

Adds the given specs as a child of this spec.

def contentSpec = copySpec {  from("content") {    include"**/*.txt"  }}task copy(type: Copy) {  into"$buildDir/copy"  with contentSpec}
©Gradle Inc. All rights reserved.
gradle
Careers |Privacy |Terms of Service |Contact

[8]ページ先頭

©2009-2025 Movatter.jp