HHH-12946 Remove unnecessary dependencies when building with JDK9+
We don't need to depend on JAXB's compiler (XJC) in our modules, we just need the dependency in specific tasks during the build. In particular we don't want users to transitively depend on XJC. Also, we don't need an explicit dependency to JAXB in every module, having one in hibernate-core is enough.
This commit is contained in:
parent
f9609f93b2
commit
e6cd7d8495
|
@ -108,35 +108,20 @@ dependencies {
|
||||||
testRuntime( libraries.hana )
|
testRuntime( libraries.hana )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// Java 9 ftw!
|
// Java 9 ftw!
|
||||||
if ( JavaVersion.current().isJava9Compatible() ) {
|
if ( JavaVersion.current().isJava9Compatible() ) {
|
||||||
// The JDK used to run Gradle is Java 9+, and we assume that that is the same
|
// In order for code generated by jpamodelgen to be compiled successfully,
|
||||||
// JDK for executing tasks
|
// we need the @javax.annotation.Generated annotation to be in the classpath,
|
||||||
compile( libraries.jaxb_api )
|
// and it's no longer in the JDK starting with JDK9
|
||||||
compile( libraries.jaxb_runtime )
|
// (though @javax.annotation.processing.Generated is available in JDK9).
|
||||||
compile( libraries.jaxb_xjc )
|
// Thus we need an additional dependency.
|
||||||
compile( libraries.jaxb2_basics )
|
// See also https://hibernate.atlassian.net/browse/HHH-12990
|
||||||
compile( libraries.jaxb2_basics_ant )
|
|
||||||
compile( libraries.jsr250_api )
|
compile( libraries.jsr250_api )
|
||||||
|
|
||||||
testCompile( libraries.jaxb_api )
|
|
||||||
testCompile( libraries.jaxb_runtime )
|
|
||||||
testCompile( libraries.jaxb_xjc )
|
|
||||||
testCompile( libraries.jaxb2_basics )
|
|
||||||
testCompile( libraries.jaxb2_basics_ant )
|
|
||||||
testCompile( libraries.jsr250_api )
|
testCompile( libraries.jsr250_api )
|
||||||
|
|
||||||
testRuntime( libraries.jaxb_api )
|
|
||||||
testRuntime( libraries.jaxb_runtime )
|
|
||||||
testRuntime( libraries.jaxb_xjc )
|
|
||||||
testRuntime( libraries.jaxb2_basics )
|
|
||||||
testRuntime( libraries.jaxb2_basics_ant )
|
|
||||||
}
|
}
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
// Mac-specific
|
// Mac-specific
|
||||||
project.ext.toolsJar = file("${System.getProperty('java.home')}/../lib/tools.jar")
|
project.ext.toolsJar = file("${System.getProperty('java.home')}/../lib/tools.jar")
|
||||||
if ( project.toolsJar.exists() ) {
|
if ( project.toolsJar.exists() ) {
|
||||||
|
|
|
@ -27,6 +27,9 @@ dependencies {
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// Java 9 ftw!
|
// Java 9 ftw!
|
||||||
if ( JavaVersion.current().isJava9Compatible() ) {
|
if ( JavaVersion.current().isJava9Compatible() ) {
|
||||||
|
compile( libraries.jaxb_api )
|
||||||
|
compile( libraries.jaxb_runtime )
|
||||||
|
|
||||||
xjc( libraries.jaxb_runtime )
|
xjc( libraries.jaxb_runtime )
|
||||||
xjc( libraries.jaxb_xjc )
|
xjc( libraries.jaxb_xjc )
|
||||||
xjc( libraries.jaxb2_basics )
|
xjc( libraries.jaxb2_basics )
|
||||||
|
|
|
@ -24,6 +24,8 @@ dependencies {
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
// Java 9 ftw!
|
// Java 9 ftw!
|
||||||
if ( JavaVersion.current().isJava9Compatible() ) {
|
if ( JavaVersion.current().isJava9Compatible() ) {
|
||||||
|
compile( libraries.jaxb_api )
|
||||||
|
|
||||||
xjc( libraries.jaxb_runtime )
|
xjc( libraries.jaxb_runtime )
|
||||||
xjc( libraries.jaxb_xjc )
|
xjc( libraries.jaxb_xjc )
|
||||||
xjc( libraries.jaxb2_basics )
|
xjc( libraries.jaxb2_basics )
|
||||||
|
|
Loading…
Reference in New Issue