diff --git a/.gitignore b/.gitignore index f6b839a..1f93dfc 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,3 @@ build .idea - -# Ignore ProjectVersion file -src/main/java/com/incognia/api/ProjectVersion.java diff --git a/build.gradle b/build.gradle index 7b779f0..97240eb 100644 --- a/build.gradle +++ b/build.gradle @@ -12,12 +12,18 @@ version = "3.18.0" def projectVersion = version.toString() def testJavaVersion = providers.gradleProperty("testJavaVersion").orElse("8").get().toInteger() -def projectVersionFile = layout.projectDirectory.file("src/main/java/com/incognia/api/ProjectVersion.java") +def projectVersionSourceDir = layout.buildDirectory.dir("generated/sources/projectVersion/java/main") +def projectVersionFile = projectVersionSourceDir.map { + it.file("com/incognia/api/ProjectVersion.java") +} -tasks.register("createProjectVersionFile") { - outputs.file(projectVersionFile) +def createProjectVersionFile = tasks.register("createProjectVersionFile") { + inputs.property("projectVersion", projectVersion) + outputs.dir(projectVersionSourceDir) doLast { - projectVersionFile.asFile.text = + def outputFile = projectVersionFile.get().asFile + outputFile.parentFile.mkdirs() + outputFile.text = """package com.incognia.api; public class ProjectVersion { @@ -27,8 +33,10 @@ public class ProjectVersion { } } -tasks.named('compileJava') { - dependsOn(tasks.named("createProjectVersionFile")) +sourceSets { + main { + java.srcDir(createProjectVersionFile) + } } repositories {