diff --git a/config/spring-security-config.gradle b/config/spring-security-config.gradle index c4d45c628d1..cd0a11b1a55 100644 --- a/config/spring-security-config.gradle +++ b/config/spring-security-config.gradle @@ -117,28 +117,32 @@ dependencies { testRuntimeOnly 'org.hsqldb:hsqldb' } -def versionlessXsd = project.tasks.create("versionlessXsd", CreateVersionlessXsdTask) { - inputFiles.from(project.sourceSets.main.resources) +def rncToXsd = tasks.named('rncToXsd', RncToXsd) +rncToXsd.configure { + rncDir = file('src/main/resources/org/springframework/security/config/') + xsdDir = rncDir + xslFile = new File(rncDir, 'spring-security.xsl') +} + +def versionlessXsd = tasks.register("versionlessXsd", CreateVersionlessXsdTask) { + inputFiles.from(rncToXsd.map { task -> project.fileTree(task.xsdDir) }) versionlessXsdFile = project.layout.buildDirectory.file("versionlessXsd/spring-security.xsd") } -processResources { +tasks.named('processResources', ProcessResources).configure { from(versionlessXsd) { into 'org/springframework/security/config/' } + from(rncToXsd) { + duplicatesStrategy DuplicatesStrategy.EXCLUDE + into 'org/springframework/security/config/' + } } -tasks.named('rncToXsd', RncToXsd).configure { - rncDir = file('src/main/resources/org/springframework/security/config/') - xsdDir = rncDir - xslFile = new File(rncDir, 'spring-security.xsl') -} - -sourceSets { - main { - resources { - srcDir(tasks.named('rncToXsd')) - } +tasks.named('sourcesJar', Jar).configure { + from(rncToXsd) { + duplicatesStrategy DuplicatesStrategy.EXCLUDE + into 'org/springframework/security/config/' } }