Files
spring-batch/publish-maven.gradle
2020-03-04 16:26:00 -06:00

96 lines
2.1 KiB
Groovy

apply plugin: "propdeps-maven"
install {
repositories.mavenInstaller {
customizePom(pom, project)
}
}
def customizePom(pom, gradleProject) {
pom.whenConfigured { generatedPom ->
// eliminate test-scoped dependencies (no need in maven central poms)
generatedPom.dependencies.removeAll { dep ->
dep.scope == 'test'
}
// sort to make pom dependencies order consistent to ease comparison of older poms
generatedPom.dependencies = generatedPom.dependencies.sort { dep ->
"$dep.scope:$dep.groupId:$dep.artifactId"
}
// add all items necessary for maven central publication
generatedPom.project {
name = gradleProject.description
description = gradleProject.description
url = linkHomepage
organization {
name = 'Spring'
url = 'https://spring.io'
}
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'https://www.apache.org/licenses/LICENSE-2.0.txt'
distribution 'repo'
}
}
scm {
url = linkScmUrl
connection = 'scm:git:' + linkScmConnection
developerConnection = 'scm:git:' + linkScmDevConnection
}
developers {
developer {
id = 'dsyer'
name = 'Dave Syer'
email = 'dsyer@vmware.com'
}
developer {
id = 'nebhale'
name = 'Ben Hale'
email = 'bhale@vmware.com'
}
developer {
id = 'lward'
name = 'Lucas Ward'
}
developer {
id = 'robokaso'
name = 'Robert Kasanicky'
email = 'robokaso@gmail.com'
}
developer {
id = 'trisberg'
name = 'Thomas Risberg'
email = 'trisberg@vmware.com'
}
developer {
id = 'dhgarrette'
name = 'Dan Garrette'
email = 'dhgarrette@gmail.com'
}
developer {
id = 'mminella'
name = 'Michael Minella'
email = 'mminella@vmware.com'
roles = ["project lead"]
}
developer {
id = 'chrisjs'
name = 'Chris Schaefer'
email = 'cschaefer@vmware.com'
}
developer {
id = 'benas'
name = 'Mahmoud Ben Hassine'
email = 'mbenhassine@vmware.com'
roles = ["project lead"]
}
}
}
}
}