Skip to content

Commit 93ffe8d

Browse files
Copilotxiang17
andcommitted
Fix spring.factories merging using PropertiesFileTransformer
Co-authored-by: xiang17 <9310587+xiang17@users.noreply.github.com>
1 parent 078b8bd commit 93ffe8d

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

buildSrc/src/main/kotlin/ai.smoke-test-jar.gradle.kts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2-
import com.github.jengelman.gradle.plugins.shadow.transformers.AppendingTransformer
2+
import com.github.jengelman.gradle.plugins.shadow.transformers.PropertiesFileTransformer
33
import com.microsoft.applicationinsights.gradle.AiSmokeTestExtension
44

55
plugins {
@@ -16,9 +16,13 @@ tasks.named<ShadowJar>("shadowJar") {
1616
archiveClassifier.set("")
1717
mergeServiceFiles()
1818

19-
// Append spring.factories files from all dependencies
19+
// Properly merge spring.factories files from all dependencies
2020
// This is required for Spring Boot auto-configuration to work
21-
append("META-INF/spring.factories")
21+
// Use PropertiesFileTransformer to merge duplicate keys instead of simple append
22+
transform(PropertiesFileTransformer::class.java) {
23+
paths = listOf("META-INF/spring.factories")
24+
mergeStrategy = "append"
25+
}
2226

2327
// Set main class - can be overridden by individual projects via mainClassName property
2428
manifest {

0 commit comments

Comments
 (0)