Build.gradle: Difference between revisions
Jump to navigation
Jump to search
(→DSL) |
|||
(17 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=External= | |||
* https://docs.gradle.org/current/userguide/writing_build_scripts.html | |||
== | =Internal= | ||
* [[Gradle_Concepts#Configuration_Scripts_and_Core_Types|Gradle Concepts]] | |||
* [[Gradle Project#Overview|Project]] | |||
=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]]. | |||
=Example= | |||
<syntaxhighlight lang='groovy'> | <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 { | 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> | </syntaxhighlight> | ||
=Comments= | |||
== | |||
<syntaxhighlight lang='groovy'> | <syntaxhighlight lang='groovy'> | ||
// This is a comment | |||
</syntaxhighlight> | </syntaxhighlight> | ||
= | =Code= | ||
The build script may include general-purpose Java and Groovy code: | |||
<syntaxhighlight lang='groovy'> | <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> | |||
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
}
}