* Upgrade Gradle Wrapper * Remove deprecation warnings * Fix Sonar Build Depends on: https://github.com/SpringSource/gradle-plugins/pull/1 INT-2512 - Improve declaration of optional and provided dependencies INT-2512 - Reverted Bundlor Plugin Version Number. With that change the Spring Integration specific part of the code changes is decoupled from the Bundlor pull request: https://github.com/SpringSource/gradle-plugins/pull/1 . Once the Bundlor plugin is updated and released, I can bump the version number (Only then, though all deprecation warnings will be gone). INT-2512 - Code Review **Do we really want to add mavenlocal() permanently? I usually add it locally when I need it** Sorry my bad. Forgot to remove my local addition. **snapshot?** The Bundlor plugin relies on Snapshot releases for the Gradle plugin (I reverted the DocBook version). **mixed leading tabs and spaces** Removed every single leading space. Unfortunately, there were lots of spaces. Took a while. I hope this looks much better. **Why are we removing this? Don't we need a local install any more?** The Maven install logic is now handled by the customized/extended "maven" plugin in **publish-maven.gradle**. This is how Chris has set it up for the Spring Framework. INT-2512 - Remove mavenLocal() Change 'build/jacoco.exec' to '${buildDir.name}/jacoco.exec'.
76 lines
1.9 KiB
Groovy
76 lines
1.9 KiB
Groovy
apply plugin: 'maven'
|
|
|
|
ext.optionalDeps = []
|
|
ext.providedDeps = []
|
|
|
|
ext.optional = { optionalDeps << it }
|
|
ext.provided = { providedDeps << it }
|
|
|
|
install {
|
|
repositories.mavenInstaller {
|
|
customizePom(pom, project)
|
|
}
|
|
}
|
|
|
|
def customizePom(pom, gradleProject) {
|
|
pom.whenConfigured { generatedPom ->
|
|
// respect 'optional' and 'provided' dependencies
|
|
gradleProject.optionalDeps.each { dep ->
|
|
generatedPom.dependencies.find { it.artifactId == dep.name }?.optional = true
|
|
}
|
|
gradleProject.providedDeps.each { dep ->
|
|
generatedPom.dependencies.find { it.artifactId == dep.name }?.scope = 'provided'
|
|
}
|
|
|
|
// eliminate test-scoped dependencies (no need in maven central poms)
|
|
generatedPom.dependencies.removeAll { dep ->
|
|
dep.scope == 'test'
|
|
}
|
|
|
|
// add all items necessary for maven central publication
|
|
generatedPom.project {
|
|
name = gradleProject.description
|
|
description = gradleProject.description
|
|
url = 'https://github.com/SpringSource/spring-integration'
|
|
organization {
|
|
name = 'SpringSource'
|
|
url = 'http://springsource.org'
|
|
}
|
|
licenses {
|
|
license {
|
|
name 'The Apache Software License, Version 2.0'
|
|
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
|
distribution 'repo'
|
|
}
|
|
}
|
|
scm {
|
|
url = 'https://github.com/SpringSource/spring-integration'
|
|
connection = 'scm:git:git://github.com/SpringSource/spring-integration'
|
|
developerConnection = 'scm:git:git://github.com/SpringSource/spring-integration'
|
|
}
|
|
|
|
developers {
|
|
developer {
|
|
id = 'markfisher'
|
|
name = 'Mark Fisher'
|
|
email = 'markfisher@vmware.com'
|
|
}
|
|
developer {
|
|
id = 'olegz'
|
|
name = 'Oleg Zhurakousky'
|
|
email = 'ozhurakousky@vmware.com'
|
|
}
|
|
developer {
|
|
id = 'garyrussell'
|
|
name = 'Gary Russell'
|
|
email = 'grussell@vmware.com'
|
|
}
|
|
developer {
|
|
id = 'ghillert'
|
|
name = 'Gunnar Hillert'
|
|
email = 'ghillert@vmware.com'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |