Skip to content

Commit 71c67d5

Browse files
committed
Follow existing pattern for generated resources
Follow the same pattern as includedAgentDir/includedJarFileTree: - declare pomPropertiesDir and pomPropertiesFileTree near the top - add dependsOn(pomPropertiesFileTree) to processResources - declare main.resources.srcDir(pomPropertiesDir) in the sourceSets block - register generatePomProperties (WriteProperties) near generateAgentJarIndex - wire pomPropertiesFileTree.builtBy(generatePomProperties) This avoids the need for a task-provider-mapped srcDir since WriteProperties outputs a single file (not a directory), so the fileTree + builtBy approach is the correct way to express the dependency.
1 parent e05f359 commit 71c67d5

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

dd-java-agent/build.gradle

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ configurations {
1919
def includedAgentDir = project.layout.buildDirectory.dir("generated/included")
2020
def includedJarFileTree = fileTree(includedAgentDir)
2121

22+
def pomPropertiesDir = project.layout.buildDirectory.dir("generated/maven-metadata")
23+
def pomPropertiesFileTree = fileTree(pomPropertiesDir)
24+
2225
tasks.named("processResources") {
2326
dependsOn(includedJarFileTree)
27+
dependsOn(pomPropertiesFileTree)
2428
}
2529

2630
sourceSets {
@@ -34,6 +38,7 @@ sourceSets {
3438
java.srcDirs "${project.projectDir}/src/main/java11"
3539
}
3640
main.resources.srcDir(includedAgentDir)
41+
main.resources.srcDir(pomPropertiesDir)
3742
}
3843

3944
def java6CompileTask = tasks.named("compileMain_java6Java") {
@@ -325,16 +330,12 @@ def generateAgentJarIndex = tasks.register('generateAgentJarIndex', JavaExec) {
325330
sourceSets.main.resources.srcDir(generateAgentJarIndex)
326331

327332
def generatePomProperties = tasks.register('generatePomProperties', WriteProperties) {
328-
destinationFile = project.layout.buildDirectory.file("generated/maven-metadata/META-INF/maven/com.datadoghq/dd-java-agent/pom.properties")
333+
destinationFile = pomPropertiesDir.map { it.file("META-INF/maven/com.datadoghq/dd-java-agent/pom.properties") }
329334
property("groupId", "com.datadoghq")
330335
property("artifactId", "dd-java-agent")
331336
property("version", project.providers.provider { project.version.toString() })
332337
}
333-
sourceSets.main.resources.srcDir(
334-
generatePomProperties.map {
335-
project.layout.buildDirectory.dir("generated/maven-metadata").get()
336-
}
337-
)
338+
pomPropertiesFileTree.builtBy(generatePomProperties)
338339

339340
subprojects { Project subProj ->
340341
// Don't need javadoc task run for internal projects.

0 commit comments

Comments
 (0)