blob: 5b78c2d2c3eb6d690647c461408d050024c0ac93 (
plain) (
blame)
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
29
30
31
32
33
34
35
36
37
|
import org.gradle.plugins.ide.eclipse.model.EclipseModel
import java.util.*
plugins {
eclipse
}
// Workaround from https://github.com/gradle/gradle/issues/898#issuecomment-885765821
val eclipseResourceEncoding by tasks.registering {
val outputFile = file(".settings/org.eclipse.core.resources.prefs")
val encoding = providers.systemProperty("file.encoding")
inputs.property("file.encoding", encoding)
outputs.file(outputFile)
doLast {
val eclipseEncodingProperties = Properties(2)
eclipseEncodingProperties["eclipse.preferences.version"] = "1"
eclipseEncodingProperties["encoding/<project>"] = encoding.get()
outputFile.outputStream().use { outputStream ->
eclipseEncodingProperties.store(outputStream, "generated by $name")
}
}
}
val eclipseTask = tasks.named("eclipse") {
dependsOn(eclipseResourceEncoding)
}
the<EclipseModel>().synchronizationTasks(eclipseResourceEncoding)
tasks.register("clobberEclipse", Delete::class) {
mustRunAfter(eclipseTask)
delete(".classpath")
delete(".project")
delete(".settings")
}
|