# KotlinGradleScriptTemplate

@Incubating
abstract class KotlinGradleScriptTemplate(host: KotlinScriptHost<Gradle>) : DefaultKotlinScript, PluginAware(source)

Base class for Gradle Kotlin DSL standalone Gradle scripts IDE support, aka. init scripts.

#### Since

8.1

## Constructors

KotlinGradleScriptTemplate
Link copied to clipboard
constructor(host: KotlinScriptHost<Gradle>)

## Properties

logger
Link copied to clipboard
open override val logger: Logger

Logger for scripts. You can use this in your script to write log messages.

logging
Link copied to clipboard
open override val logging: LoggingManager

The LoggingManager which can be used to receive logging and to control the standard output/error capture for this script. By default, `System.out` is redirected to the Gradle logging system at the `QUIET` log level, and `System.err` is redirected at the `ERROR` log level.

resources
Link copied to clipboard
open override val resources: ResourceHandler

Provides access to resource-specific utility methods, for example factory methods that create various resources.

## Functions

apply
Link copied to clipboard
open override fun apply(@DelegatesTo(value = ObjectConfigurationAction::class) closure: Closure<Any>)
open override fun apply(options: MutableMap<String, *>)
open override fun apply(action: Action<in ObjectConfigurationAction>)
apply
Link copied to clipboard
inline fun <T : Plugin<*>> PluginAware.apply()

Applies the plugin of the given type T. Does nothing if the plugin has already been applied.

inline fun PluginAware.apply(vararg options: Pair<String, Any?>)

Kotlin extension function for org.gradle.api.plugins.PluginAware.apply.

fun PluginAware.apply(from: Any? = null, plugin: String? = null, to: Any? = null)

Applies the given plugin or script.

applyTo
Link copied to clipboard
inline fun <T : Plugin<*>> PluginAware.applyTo(vararg targets: Any)

Applies the plugin of the given type T to the specified object. Does nothing if the plugin has already been applied.

copy
Link copied to clipboard
open override fun copy(configuration: Action<CopySpec>): WorkResult

Copies the specified files.

copySpec
Link copied to clipboard
open override fun copySpec(): CopySpec
open override fun copySpec(configuration: Action<CopySpec>): CopySpec

Creates a {@link CopySpec} which can later be used to copy files or create an archive.

delete
Link copied to clipboard
open override fun delete(vararg paths: Any): Boolean

Deletes files and directories.

open override fun delete(configuration: Action<DeleteSpec>): WorkResult

Deletes the specified files.

exec
Link copied to clipboard
open override fun exec(configuration: Action<ExecSpec>): ExecResult

Executes an external command.

file
Link copied to clipboard
open override fun file(path: Any): File
open override fun file(path: Any, validation: PathValidation): File

Resolves a file path relative to this script's target base directory.

files
Link copied to clipboard
open override fun files(vararg paths: Any): ConfigurableFileCollection
open override fun files(paths: Any, configuration: Action<ConfigurableFileCollection>): ConfigurableFileCollection

Creates a ConfigurableFileCollection containing the given files.

fileTree
Link copied to clipboard
open override fun fileTree(baseDir: Any): ConfigurableFileTree
open override fun fileTree(baseDir: Any, configuration: Action<ConfigurableFileTree>): ConfigurableFileTree

Creates a new ConfigurableFileTree using the given base directory.

getInitscript
Link copied to clipboard
fun getInitscript(): ScriptHandler

The ScriptHandler for this script.

getPluginManager
Link copied to clipboard
open override fun getPluginManager(): PluginManager
getPlugins
Link copied to clipboard
open override fun getPlugins(): PluginContainer
javaexec
Link copied to clipboard
open override fun javaexec(configuration: Action<JavaExecSpec>): ExecResult

Executes an external Java process.

mkdir
Link copied to clipboard
open override fun mkdir(path: Any): File

Creates a directory and returns a file pointing to it.

relativePath
Link copied to clipboard
open override fun relativePath(path: Any): String

Returns the relative path from this script's target base directory to the given path.

tarTree
Link copied to clipboard
open override fun tarTree(tarPath: Any): FileTree

Creates a new FileTree which contains the contents of the given TAR file.

uri
Link copied to clipboard
open override fun uri(path: Any): URI

Resolves a file path to a URI, relative to this script's target base directory.

zipTree
Link copied to clipboard
open override fun zipTree(zipPath: Any): FileTree

Creates a new FileTree which contains the contents of the given ZIP file.