// 8.3 https://gradle.org/ //! api // https://docs.gradle.org/current/dsl/index.html // Core types // https://docs.gradle.org/current/dsl/org.gradle.api.Project.html class Project { // Properties Set allprojects AntBuilder ant ArtifactHandler artifacts File buildFile ScriptHandler buildscript Map childProjects ConfigurationContainer configurations List defaultTasks DependencyHandler dependencies DependencyLockingHandler dependencyLocking String description ExtensionContainer extensions Gradle gradle Object group ProjectLayout layout Logger logger LoggingManager logging String name InputNormalizationHandler normalization Project parent String path PluginManager pluginManager PluginContainer plugins Project project File projectDir Map properties RepositoryHandler repositories ResourceHandler resources File rootDir Project rootProject ProjectState state Object status Set subprojects TaskContainer tasks Object version // Methods String absoluteProjectPath(String path) void afterEvaluate(Closure closure) void afterEvaluate(Action action) void allprojects(Action action) AntBuilder ant(Action configureAction) void apply(Closure closure) void apply(Map options) void apply(Action action) void artifacts(Action configureAction) void beforeEvaluate(Closure closure) void beforeEvaluate(Action action) Iterable configure(Iterable objects, Closure configureClosure) Iterable configure(Iterable objects, Action configureAction) Object configure(Object object, Closure configureClosure) NamedDomainObjectContainer container(Class type) NamedDomainObjectContainer container(Class type, Closure factoryClosure) NamedDomainObjectContainer container(Class type, NamedDomainObjectFactory factory) WorkResult copy(Closure closure) WorkResult copy(Action action) CopySpec copySpec() CopySpec copySpec(Closure closure) CopySpec copySpec(Action action) void defaultTasks(String... defaultTasks) boolean delete(Object... paths) WorkResult delete(Action action) void dependencyLocking(Action configuration) Project evaluationDependsOn(String path) ExecResult exec(Closure closure) ExecResult exec(Action action) File file(Object path) File file(Object path, PathValidation validation) ConfigurableFileTree fileTree(Object baseDir) ConfigurableFileTree fileTree(Object baseDir, Closure configureClosure) ConfigurableFileTree fileTree(Object baseDir, Action configureAction) ConfigurableFileTree fileTree(Map args) ConfigurableFileCollection files(Object paths, Closure configureClosure) ConfigurableFileCollection files(Object paths, Action configureAction) ConfigurableFileCollection files(Object... paths) Project findProject(String path) Object findProperty(String propertyName) Map> getAllTasks(boolean recursive) Set getTasksByName(String name, boolean recursive) boolean hasProperty(String propertyName) ExecResult javaexec(Closure closure) ExecResult javaexec(Action action) File mkdir(Object path) void normalization(Action configuration) Project project(String path) Project project(String path, Closure configureClosure) Project project(String path, Action configureAction) Object property(String propertyName) String relativePath(Object path) String relativeProjectPath(String path) void setProperty(String name, Object value) void subprojects(Action action) WorkResult sync(Action action) FileTree tarTree(Object tarPath) Task task(String name) Task task(String name, Closure configureClosure) Task task(String name, Action configureAction) Task task(Map args, String name) Task task(Map args, String name, Closure configureClosure) URI uri(Object path) FileTree zipTree(Object zipPath) // Methods added by the java plugin Manifest manifest() Manifest manifest(Closure closure) Manifest manifest(Action action) // Script blocks allprojects { } ant { } artifacts { } buildscript { } configurations { } dependencies { } repositories { } subprojects { } application { } distributions { } reporting { } sourceSets { } publishing { } signing { } } // https://docs.gradle.org/current/dsl/org.gradle.api.Task.html class Task { // Properties List> actions AntBuilder ant Set dependsOn String description TaskDestroyables destroyables boolean didWork boolean enabled ExtensionContainer extensions TaskDependency finalizedBy String group TaskInputs inputs TaskLocalState localState Logger logger LoggingManager logging TaskDependency mustRunAfter String name TaskOutputs outputs String path Project project TaskDependency shouldRunAfter TaskState state TaskDependency taskDependencies File temporaryDir Property timeout // Methods Task dependsOn(Object... paths) Task doFirst(Closure action) Task doFirst(String actionName, Action action) Task doFirst(Action action) Task doLast(Closure action) Task doLast(String actionName, Action action) Task doLast(Action action) void doNotTrackState(String reasonNotToTrackState) Task finalizedBy(Object... paths) boolean hasProperty(String propertyName) Task mustRunAfter(Object... paths) void onlyIf(Closure onlyIfClosure) void onlyIf(Spec onlyIfSpec) Object property(String propertyName) void setProperty(String name, Object value) TaskDependency shouldRunAfter(Object... paths) void usesService(Provider> service) } // https://docs.gradle.org/current/dsl/org.gradle.api.invocation.Gradle.html class Gradle { // Properties ExtensionContainer extensions Gradle gradle File gradleHomeDir File gradleUserHomeDir String gradleVersion Collection includedBuilds Gradle parent PluginManager pluginManager PluginContainer plugins Project rootProject StartParameter startParameter TaskExecutionGraph taskGraph // Methods void addBuildListener(BuildListener buildListener) void addListener(Object listener) ProjectEvaluationListener addProjectEvaluationListener(ProjectEvaluationListener listener) void afterProject(Closure closure) void afterProject(Action action) void allprojects(Action action) void apply(Closure closure) void apply(Map options) void apply(Action action) void beforeProject(Closure closure) void beforeProject(Action action) void buildFinished(Closure closure) void buildFinished(Action action) IncludedBuild includedBuild(String name) void projectsEvaluated(Action action) void projectsLoaded(Closure closure) void projectsLoaded(Action action) void removeListener(Object listener) void removeProjectEvaluationListener(ProjectEvaluationListener listener) void rootProject(Action action) void settingsEvaluated(Closure closure) void settingsEvaluated(Action action) void useLogger(Object logger) } // https://docs.gradle.org/current/dsl/org.gradle.api.initialization.Settings.html class Settings { // Properties BuildCacheConfiguration buildCache ExtensionContainer extensions Gradle gradle PluginManager pluginManager PluginContainer plugins File rootDir ProjectDescriptor rootProject Settings settings File settingsDir StartParameter startParameter // Methods void apply(Closure closure) void apply(Map options) void apply(Action action) void buildCache(Action action) ProjectDescriptor findProject(File projectDir) ProjectDescriptor findProject(String path) void include(String... projectPaths) void includeBuild(Object rootProject) void includeBuild(Object rootProject, Action configuration) void includeFlat(String... projectNames) ProjectDescriptor project(File projectDir) ProjectDescriptor project(String path) } // https://docs.gradle.org/current/dsl/org.gradle.api.Script.html class Script { // Properties ScriptHandler buildscript Logger logger LoggingManager logging ResourceHandler resources // Methods void apply(Closure closure) void apply(Map options) WorkResult copy(Closure closure) CopySpec copySpec(Closure closure) boolean delete(Object... paths) ExecResult exec(Closure closure) ExecResult exec(Action action) File file(Object path) File file(Object path, PathValidation validation) ConfigurableFileTree fileTree(Object baseDir) ConfigurableFileTree fileTree(Object baseDir, Closure configureClosure) ConfigurableFileTree fileTree(Map args) ConfigurableFileCollection files(Object paths, Closure configureClosure) ConfigurableFileCollection files(Object... paths) ExecResult javaexec(Closure closure) ExecResult javaexec(Action action) File mkdir(Object path) String relativePath(Object path) FileTree tarTree(Object tarPath) URI uri(Object path) FileTree zipTree(Object zipPath) // Script blocks buildscript { } } // https://docs.gradle.org/current/dsl/org.gradle.api.tasks.SourceSet.html class SourceSet { // Properties SourceDirectorySet allJava SourceDirectorySet allSource FileCollection compileClasspath ExtensionContainer extensions SourceDirectorySet java String name SourceSetOutput output SourceDirectorySet resources FileCollection runtimeClasspath // Methods SourceSet compiledBy(Object... taskPaths) String getCompileTaskName(String language) String getTaskName(String verb, String target) SourceSet java(Action configureAction) SourceSet resources(Action configureAction) // Script blocks java {} resources {} } // Task types // https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Copy.html class Copy { // Properties boolean caseSensitive File destinationDir Property dirPermissions DuplicatesStrategy duplicatesStrategy Set excludes Property filePermissions boolean includeEmptyDirs Set includes FileCollection source // Methods AbstractCopyTask eachFile(Closure closure) AbstractCopyTask eachFile(Action action) AbstractCopyTask exclude(Closure excludeSpec) AbstractCopyTask exclude(Iterable excludes) AbstractCopyTask exclude(String... excludes) AbstractCopyTask exclude(Spec excludeSpec) AbstractCopyTask expand(Map properties) AbstractCopyTask filesMatching(Iterable patterns, Action action) AbstractCopyTask filesMatching(String pattern, Action action) AbstractCopyTask filesNotMatching(Iterable patterns, Action action) AbstractCopyTask filesNotMatching(String pattern, Action action) AbstractCopyTask filter(Closure closure) AbstractCopyTask filter(Class filterType) AbstractCopyTask filter(Map properties, Class filterType) AbstractCopyTask filter(Transformer transformer) AbstractCopyTask from(Object sourcePath, Closure c) AbstractCopyTask from(Object sourcePath, Action configureAction) AbstractCopyTask from(Object... sourcePaths) AbstractCopyTask include(Closure includeSpec) AbstractCopyTask include(Iterable includes) AbstractCopyTask include(String... includes) AbstractCopyTask include(Spec includeSpec) AbstractCopyTask into(Object destDir) AbstractCopyTask into(Object destPath, Closure configureClosure) CopySpec into(Object destPath, Action copySpec) AbstractCopyTask rename(Closure closure) AbstractCopyTask rename(String sourceRegEx, String replaceWith) AbstractCopyTask rename(Pattern sourceRegEx, String replaceWith) AbstractCopyTask rename(Transformer renamer) CopySpec with(CopySpec... sourceSpecs) } // https://docs.gradle.org/current/dsl/org.gradle.api.tasks.compile.JavaCompile.html class JavaCompile { // Properties FileCollection classpath DirectoryProperty destinationDirectory Set excludes Set includes Property javaCompiler CompileOptions options FileTree source String sourceCompatibility String targetCompatibility // Methods SourceTask exclude(Closure excludeSpec) SourceTask exclude(Iterable excludes) SourceTask exclude(String... excludes) SourceTask exclude(Spec excludeSpec) SourceTask include(Closure includeSpec) SourceTask include(Iterable includes) SourceTask include(String... includes) SourceTask include(Spec includeSpec) SourceTask source(Object... sources) }