Build.gradle: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 3: Line 3:


=Internal=
=Internal=
* [[Gradle_Concepts#Configuration_Scripts_and_Core_Types|Gradle Concepts]]
* [[Gradle Project#Overview|Project]]
* [[Gradle Project#Overview|Project]]


=Overview=
=Overview=
build.gradle is referred to as an Gradle build script. It is the script interface to a [[Gradle_Project#Project_API_and_build.gradle_DSL|Project instance]].


build.gradle is the script interface to a [[Gradle_Project#Project_API_and_build.gradle_DSL|Project instance]].
=Example=
<syntaxhighlight lang='groovy'>
 
apply plugin: 'java'
 
// name comes from the directory name or it can be changed in settings.gradle
group = "playground.example"
version = "0.1.0"
description = "A Gradle example project"
 
repositories {
    mavenLocal()
    mavenCentral()
}
 
dependencies {
    implementation 'org.slf4j:slf4j-api:1.7.12'
    testImplementation 'junit:junit:4.+'
}
 
configurations {
    testImplementation.exclude group: 'com.example'
}
 
configurations.all {
    resolutionStrategy.cacheChangingModulesFor 3600, 'seconds'
}
 
compileJava {
    options.compilerArgs += ['-Xlint']
}
 
javadoc {
    options.charSet = 'UTF-8'
}
 
task runMain(type: JavaExec) {
    classpath = sourceSets.main.runtimeClasspath
    main = "io.novaordis.playground.gradle.java.Main"
}
</syntaxhighlight>


=Comments=
=Comments=
Line 13: Line 55:
<syntaxhighlight lang='groovy'>
<syntaxhighlight lang='groovy'>
// This is a comment
// This is a comment
</syntaxhighlight>
=Code=
The build script may include general-purpose Java and Groovy code:
<syntaxhighlight lang='groovy'>
class Experimental {
    private String name;
    Experimental(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return name;
    }
}
def experimental = new Experimental("blue");
task test {
    doLast {
        println experimental
    }
}
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 22:10, 11 October 2020

External

Internal

Overview

build.gradle is referred to as an Gradle build script. It is the script interface to a Project instance.

Example

apply plugin: 'java'

// name comes from the directory name or it can be changed in settings.gradle
group = "playground.example"
version = "0.1.0"
description = "A Gradle example project"

repositories {
    mavenLocal()
    mavenCentral()
}

dependencies {
    implementation 'org.slf4j:slf4j-api:1.7.12'
    testImplementation 'junit:junit:4.+'
}

configurations {
    testImplementation.exclude group: 'com.example'
}

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 3600, 'seconds'
}

compileJava {
    options.compilerArgs += ['-Xlint']
}

javadoc {
    options.charSet = 'UTF-8'
}

task runMain(type: JavaExec) {
    classpath = sourceSets.main.runtimeClasspath
    main = "io.novaordis.playground.gradle.java.Main"
}

Comments

// This is a comment

Code

The build script may include general-purpose Java and Groovy code:

class Experimental {

    private String name;

    Experimental(String name) {

        this.name = name;
    }

    @Override
    public String toString() {
        return name;
    }
}

def experimental = new Experimental("blue");

task test {
    doLast {
        println experimental
    }
}