HHH-8219 - Adding Animal Sniffer plug-in to make sure only Java 6 APIs are used
This commit is contained in:
parent
23b6f6ab06
commit
77a4c3e52e
26
build.gradle
26
build.gradle
|
@ -105,6 +105,8 @@ subprojects { subProject ->
|
|||
configurations {
|
||||
all*.exclude group: 'xml-apis', module: 'xml-apis'
|
||||
}
|
||||
animalSniffer
|
||||
javaApiSignature
|
||||
}
|
||||
|
||||
// appropriately inject the common dependencies into each sub-project
|
||||
|
@ -133,6 +135,9 @@ subprojects { subProject ->
|
|||
}
|
||||
jaxb( libraries.jaxb2_basics )
|
||||
jaxb( libraries.jaxb2_ant )
|
||||
|
||||
animalSniffer ( libraries.animal_sniffer )
|
||||
javaApiSignature ( libraries.java16_signature )
|
||||
}
|
||||
|
||||
// mac-specific stuff ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -308,8 +313,25 @@ subprojects { subProject ->
|
|||
}
|
||||
}
|
||||
|
||||
// eclipseClasspath will not add sources to classpath unless the dirs actually exist.
|
||||
eclipseClasspath.dependsOn("generateSources")
|
||||
// eclipseClasspath will not add sources to classpath unless the dirs actually exist.
|
||||
eclipseClasspath.dependsOn("generateSources")
|
||||
|
||||
task copyJavaApiSignature(type: Copy) {
|
||||
from configurations.javaApiSignature
|
||||
into "$buildDir/javaApiSignature/"
|
||||
rename '.*signature', 'javaApi.signature'
|
||||
}
|
||||
|
||||
// checks that only types of the target Java version are used
|
||||
task checkJavaApiSignature << {
|
||||
ant.taskdef(name: 'animalSniffer', classname: 'org.codehaus.mojo.animal_sniffer.ant.CheckSignatureTask', classpath: configurations.animalSniffer.asPath)
|
||||
ant.animalSniffer(signature: "$buildDir/javaApiSignature/javaApi.signature", classpath: configurations.compile.asPath + System.properties.'path.separator' + configurations.provided.asPath) {
|
||||
path(path: "$buildDir/classes/main")
|
||||
}
|
||||
}
|
||||
checkJavaApiSignature.dependsOn compileJava
|
||||
checkJavaApiSignature.dependsOn copyJavaApiSignature
|
||||
check.dependsOn checkJavaApiSignature
|
||||
|
||||
// specialized API/SPI checkstyle tasks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
task checkstylePublicSources(type: Checkstyle) {
|
||||
|
|
|
@ -67,6 +67,12 @@ ext {
|
|||
jaxb: 'com.sun.xml.bind:jaxb-xjc:2.1.6',
|
||||
jaxb2_basics: 'org.jvnet.jaxb2_commons:jaxb2-basics:0.6.0',
|
||||
jaxb2_ant: 'org.jvnet.jaxb2_commons:jaxb2-basics-ant:0.6.0',
|
||||
|
||||
// Animal Sniffer Ant Task and Java 1.6 API signature file
|
||||
// not using 1.9 for the time being due to MANIMALSNIFFER-34
|
||||
animal_sniffer: 'org.codehaus.mojo:animal-sniffer-ant-tasks:1.8',
|
||||
java16_signature: 'org.codehaus.mojo.signature:java16:1.0@signature',
|
||||
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~ testing
|
||||
|
||||
// logging for testing
|
||||
|
|
Loading…
Reference in New Issue