-
Notifications
You must be signed in to change notification settings - Fork 54
/
Copy pathGroovy.kt
28 lines (25 loc) · 951 Bytes
/
Groovy.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package gdx.liftoff.data.languages
import gdx.liftoff.data.files.SourceDirectory
import gdx.liftoff.data.files.path
import gdx.liftoff.data.platforms.Android
import gdx.liftoff.data.platforms.AndroidGradleFile
import gdx.liftoff.data.project.Project
import gdx.liftoff.views.JvmLanguage
/**
* Adds Groovy support to the project.
*/
@JvmLanguage
@Suppress("unused") // Class accessed via reflection.
class Groovy : Language {
override val id = "groovy"
override val version = "4.0.22"
override fun initiate(project: Project) {
project.rootGradle.plugins.add(id)
project.platforms.values.forEach { project.files.add(SourceDirectory(it.id, path("src", "main", "groovy"))) }
if (project.hasPlatform(Android.ID)) {
val gradleFile = project.getGradleFile(Android.ID) as AndroidGradleFile
gradleFile.srcFolders.add("'src/main/groovy'")
}
addDependency(project, "org.apache.groovy:groovy-all:\$groovyVersion")
}
}