提交 d4089747 编写于 作者: B Brian Clozel

Use dependency management in Framework build

Prior to this commit, the Spring Framework build would partially use the
dependency management plugin to import and enforce BOMs.

This commit applies the dependency management plugin to all Java
projects and regroups all version management declaration in the root
`build.gradle` file (versions and exclusions).

Some versions are overridden in specific modules for
backwards-compatibility reasons or extended support.

This commit also adds the Gradle versions plugin that checks for
dependency upgrades in artifact repositories and produces a report; you
can use the following:

    ./gradlew dependencyUpdates
上级 c1394182
......@@ -5,7 +5,7 @@ buildscript {
}
}
plugins {
id 'io.spring.dependency-management' version '1.0.7.RELEASE' apply false
id 'io.spring.dependency-management' version '1.0.8.RELEASE' apply false
id 'org.jetbrains.kotlin.jvm' version '1.3.50' apply false
id 'org.jetbrains.dokka' version '0.9.18' apply false
id 'org.asciidoctor.convert' version '1.5.8'
......@@ -13,72 +13,291 @@ plugins {
id 'de.undercouch.download' version '4.0.0'
id "com.jfrog.artifactory" version '4.9.8' apply false
id "io.freefair.aspectj" version "4.0.0" apply false
id "com.github.ben-manes.versions" version "0.24.0"
}
ext {
moduleProjects = subprojects.findAll { it.name.startsWith("spring-") }
aspectjVersion = "1.9.4"
coroutinesVersion = "1.3.0"
freemarkerVersion = "2.3.28"
groovyVersion = "2.5.7"
hsqldbVersion = "2.5.0"
jackson2Version = "2.9.9"
jettyVersion = "9.4.20.v20190813"
junit5Version = "5.5.1"
kotlinVersion = "1.3.50"
log4jVersion = "2.12.0"
nettyVersion = "4.1.38.Final"
reactorVersion = "Dysprosium-M3"
rsocketVersion = "1.0.0-RC3"
rxjavaVersion = "1.3.8"
rxjavaAdapterVersion = "1.2.1"
rxjava2Version = "2.2.10"
slf4jVersion = "1.7.26" // spring-jcl + consistent 3rd party deps
tiles3Version = "3.0.8"
tomcatVersion = "9.0.22"
undertowVersion = "2.0.23.Final"
javaProjects = subprojects - project(":framework-bom")
withoutJclOverSlf4j = {
exclude group: "org.slf4j", module: "jcl-over-slf4j"
exclude group: "org.slf4j", name: "jcl-over-slf4j"
}
}
configure(allprojects.findAll { (it.name != "framework-bom") } ) { project ->
group = "org.springframework"
apply plugin: "java"
apply plugin: "checkstyle"
apply plugin: 'org.springframework.build.compile'
configure(subprojects) { project ->
apply plugin: "io.spring.dependency-management"
apply from: "${rootDir}/gradle/ide.gradle"
dependencyManagement {
resolutionStrategy {
cacheChangingModulesFor 0, "seconds"
imports {
mavenBom "com.fasterxml.jackson:jackson-bom:2.9.9"
mavenBom "io.netty:netty-bom:4.1.38.Final"
mavenBom "io.projectreactor:reactor-bom:Dysprosium-M3"
mavenBom "org.eclipse.jetty:jetty-bom:9.4.20.v20190813"
mavenBom "org.jetbrains.kotlin:kotlin-bom:1.3.50"
mavenBom "org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.3.0"
mavenBom "org.junit:junit-bom:5.5.1"
}
dependencies {
dependencySet(group: 'org.apache.logging.log4j', version: '2.12.0') {
entry 'log4j-api'
entry 'log4j-core'
entry 'log4j-slf4j-impl'
entry 'log4j-jul'
}
dependency "org.slf4j:slf4j-api:1.7.26"
dependency "com.google.code.findbugs:jsr305:3.0.2"
dependencySet(group: 'org.aspectj', version: '1.9.4') {
entry 'aspectjrt'
entry 'aspectjtools'
entry 'aspectjweaver'
}
dependencySet(group: 'org.codehaus.groovy', version: '2.5.7') {
entry 'groovy'
entry 'groovy-jsr223'
entry 'groovy-templates'
entry 'groovy-test'
entry 'groovy-xml'
}
dependency "io.reactivex:rxjava:1.3.8"
dependency "io.reactivex:rxjava-reactive-streams:1.2.1"
dependency "io.reactivex.rxjava2:rxjava:2.2.10"
dependencySet(group: 'io.rsocket', version: '1.0.0-RC3') {
entry 'rsocket-core'
entry 'rsocket-transport-netty'
}
dependency "com.caucho:hessian:4.0.51"
dependency "com.fasterxml:aalto-xml:1.1.1"
dependency("com.fasterxml.woodstox:woodstox-core:5.2.0") {
exclude group: "stax", name: "stax-api"
}
dependency "com.google.code.gson:gson:2.8.5"
dependency "com.google.protobuf:protobuf-java-util:3.9.0"
dependency "com.googlecode.protobuf-java-format:protobuf-java-format:1.4"
dependency("com.thoughtworks.xstream:xstream:1.4.11.1") {
exclude group: "xpp3", name: "xpp3_min"
exclude group: "xmlpull", name: "xmlpull"
}
dependency "org.apache.johnzon:johnzon-jsonb:1.1.12"
dependency("org.codehaus.jettison:jettison:1.3.8") {
exclude group: "stax", name: "stax-api"
}
dependencySet(group: 'org.jibx', version: '1.3.1') {
entry 'jibx-bind'
entry 'jibx-run'
}
dependency "org.ogce:xpp3:1.1.6"
dependency "org.yaml:snakeyaml:1.24"
dependency "com.h2database:h2:1.4.199"
dependency "com.github.ben-manes.caffeine:caffeine:2.7.0"
dependency "com.github.librepdf:openpdf:1.2.21"
dependency "com.rometools:rome:1.12.1"
dependency "commons-io:commons-io:2.5"
dependency "io.vavr:vavr:0.10.0"
dependency "net.sf.jopt-simple:jopt-simple:5.0.4"
dependencySet(group: 'org.apache.activemq', version: '5.8.0') {
entry 'activemq-broker'
entry('activemq-kahadb-store') {
exclude group: "org.springframework", name: "spring-context"
}
entry 'activemq-stomp'
}
dependency "org.apache.bcel:bcel:6.0"
dependency "org.apache.commons:commons-pool2:2.6.0"
dependencySet(group: 'org.apache.derby', version: '10.14.2.0') {
entry 'derby'
entry 'derbyclient'
}
dependency "org.apache.poi:poi-ooxml:4.1.0"
dependency "org.awaitility:awaitility:3.1.3"
dependency "org.beanshell:bsh:2.0b5"
dependency "org.freemarker:freemarker:2.3.28"
dependency "org.hsqldb:hsqldb:2.5.0"
dependency "org.quartz-scheduler:quartz:2.3.1"
dependency "org.codehaus.fabric3.api:commonj:1.1.0"
dependency "net.sf.ehcache:ehcache:2.10.4"
dependency "org.ehcache:jcache:1.0.1"
dependency "org.ehcache:ehcache:3.4.0"
dependency "org.hibernate:hibernate-core:5.4.4.Final"
dependency "org.hibernate:hibernate-validator:6.0.17.Final"
dependency "org.webjars:webjars-locator-core:0.37"
dependency "org.webjars:underscorejs:1.8.3"
dependencySet(group: 'org.apache.tomcat', version: '9.0.22') {
entry 'tomcat-util'
entry('tomcat-websocket') {
exclude group: "org.apache.tomcat", name: "tomcat-websocket-api"
exclude group: "org.apache.tomcat", name: "tomcat-servlet-api"
}
}
dependencySet(group: 'org.apache.tomcat.embed', version: '9.0.22') {
entry 'tomcat-embed-core'
entry 'tomcat-embed-websocket'
}
dependencySet(group: 'io.undertow', version: '2.0.23.Final') {
entry 'undertow-core'
entry('undertow-websockets-jsr') {
exclude group: "org.jboss.spec.javax.websocket", name: "jboss-websocket-api_1.1_spec"
}
entry('undertow-servlet') {
exclude group: "org.jboss.spec.javax.servlet", name: "jboss-servlet-api_3.1_spec"
exclude group: "org.jboss.spec.javax.annotation", name: "jboss-annotations-api_1.2_spec"
}
}
dependencySet(group: 'com.squareup.okhttp3', version: '3.14.2') {
entry 'okhttp'
entry 'mockwebserver'
}
dependency("org.apache.httpcomponents:httpclient:4.5.9") {
exclude group: "commons-logging", name: "commons-logging"
}
dependency("org.apache.httpcomponents:httpasyncclient:4.1.4") {
exclude group: "commons-logging", name: "commons-logging"
}
dependency "org.eclipse.jetty:jetty-reactive-httpclient:1.0.3"
dependency "org.jruby:jruby:9.2.7.0"
dependency "org.python:jython-standalone:2.7.1"
dependency "org.mozilla:rhino:1.7.10"
dependency "commons-fileupload:commons-fileupload:1.4"
dependency "org.synchronoss.cloud:nio-multipart-parser:1.1.0"
dependency("dom4j:dom4j:1.6.1") {
exclude group: "xml-apis", name: "xml-apis"
}
dependency("jaxen:jaxen:1.1.1") {
exclude group: "xml-apis", name: "xml-apis"
exclude group: "xom", name: "xom"
exclude group: "xerces", name: "xercesImpl"
}
dependency("junit:junit:4.13-beta-3") {
exclude group: "org.hamcrest", name: "hamcrest-core"
}
dependency("de.bechte.junit:junit-hierarchicalcontextrunner:4.12.1") {
exclude group: "junit", name: "junit"
}
dependency "org.testng:testng:6.14.3"
dependency "org.hamcrest:hamcrest:2.1"
dependency "org.assertj:assertj-core:3.13.1"
dependencySet(group: 'org.xmlunit', version: '2.6.2') {
entry 'xmlunit-assertj'
entry('xmlunit-matchers') {
exclude group: "org.hamcrest", name: "hamcrest-core"
}
}
dependencySet(group: 'org.mockito', version: '3.0.0') {
entry('mockito-core') {
exclude group: "org.hamcrest", name: "hamcrest-core"
}
entry 'mockito-junit-jupiter'
}
dependency "io.mockk:mockk:1.9.3"
dependency("net.sourceforge.htmlunit:htmlunit:2.35.0") {
exclude group: "commons-logging", name: "commons-logging"
}
dependency("org.seleniumhq.selenium:htmlunit-driver:2.35.1") {
exclude group: "commons-logging", name: "commons-logging"
}
dependency("org.seleniumhq.selenium:selenium-java:3.141.59") {
exclude group: "commons-logging", name: "commons-logging"
exclude group: "io.netty", name: "netty"
}
dependency "org.skyscreamer:jsonassert:1.5.0"
dependency "com.jayway.jsonpath:json-path:2.4.0"
dependencySet(group: 'org.apache.tiles', version: '3.0.8') {
entry 'tiles-api'
entry('tiles-core', withoutJclOverSlf4j)
entry('tiles-servlet', withoutJclOverSlf4j)
entry('tiles-jsp', withoutJclOverSlf4j)
entry('tiles-el', withoutJclOverSlf4j)
entry('tiles-extras') {
exclude group: "org.springframework", name: "spring-web"
exclude group: "org.slf4j", name: "jcl-over-slf4j"
}
}
dependency("org.apache.taglibs:taglibs-standard-jstlel:1.2.5") {
exclude group: "org.apache.taglibs", name: "taglibs-standard-spec"
}
dependency "com.ibm.websphere:uow:6.0.2.17"
dependency "com.jamonapi:jamon:2.81"
dependency "joda-time:joda-time:2.10.2"
dependency "org.eclipse.persistence:org.eclipse.persistence.jpa:2.7.4"
dependency "org.javamoney:moneta:1.3"
dependency "com.sun.activation:javax.activation:1.2.0"
dependency "com.sun.mail:javax.mail:1.6.2"
dependencySet(group: 'com.sun.xml.bind', version: '2.3.0.1') {
entry 'jaxb-core'
entry 'jaxb-impl'
entry 'jaxb-xjc'
}
dependency "javax.activation:javax.activation-api:1.2.0"
dependency "javax.annotation:javax.annotation-api:1.3.2"
dependency "javax.cache:cache-api:1.1.0"
dependency "javax.ejb:javax.ejb-api:3.2"
dependency "javax.el:javax.el-api:3.0.1-b04"
dependency "javax.enterprise.concurrent:javax.enterprise.concurrent-api:1.0"
dependency "javax.faces:javax.faces-api:2.2"
dependency "javax.inject:javax.inject:1"
dependency "javax.inject:javax.inject-tck:1"
dependency "javax.interceptor:javax.interceptor-api:1.2.2"
dependency "javax.jms:javax.jms-api:2.0.1"
dependency "javax.json:javax.json-api:1.1.4"
dependency "javax.json.bind:javax.json.bind-api:1.0"
dependency "javax.mail:javax.mail-api:1.6.2"
dependency "javax.money:money-api:1.0.3"
dependency "javax.resource:javax.resource-api:1.7.1"
dependency "javax.servlet:javax.servlet-api:4.0.1"
dependency "javax.servlet.jsp:javax.servlet.jsp-api:2.3.2-b02"
dependency "javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:1.2.1"
dependency "javax.transaction:javax.transaction-api:1.3"
dependency "javax.validation:validation-api:2.0.1.Final"
dependency "javax.websocket:javax.websocket-api:1.1"
dependency "javax.xml.bind:jaxb-api:2.3.1"
dependency "javax.xml.ws:jaxws-api:2.3.1"
dependency "org.eclipse.persistence:javax.persistence:2.2.0"
// Substitute for "javax.management:jmxremote_optional:1.0.1_04" which
// is not available on Maven Central
dependency "org.glassfish.external:opendmk_jmxremote_optional_jar:1.0-b01-ea"
dependency "org.glassfish:javax.el:3.0.1-b08"
dependency "org.glassfish.main:javax.jws:4.0-b33"
dependency "org.glassfish.tyrus:tyrus-container-servlet:1.13.1"
}
applyMavenExclusions = false
generatedPomCustomization {
enabled = false
}
imports {
mavenBom "org.junit:junit-bom:${junit5Version}"
mavenBom "org.jetbrains.kotlin:kotlin-bom:${kotlinVersion}"
mavenBom "org.jetbrains.kotlinx:kotlinx-coroutines-bom:${coroutinesVersion}"
resolutionStrategy {
cacheChangingModulesFor 0, "seconds"
}
repositories {
mavenCentral()
maven { url "https://repo.spring.io/libs-release" }
maven { url "https://repo.spring.io/milestone" } // Reactor
}
}
}
configurations.all {
// Check for updates every build
resolutionStrategy.cacheChangingModulesFor 0, "seconds"
configure([rootProject] + javaProjects) { project ->
group = "org.springframework"
// Consistent slf4j version (e.g. clashes between slf4j versions)
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
if (details.requested.group == "org.slf4j") {
details.useVersion slf4jVersion
}
}
}
apply plugin: "java"
apply plugin: "checkstyle"
apply plugin: 'org.springframework.build.compile'
apply from: "${rootDir}/gradle/ide.gradle"
pluginManager.withPlugin("kotlin") {
apply plugin: "org.jetbrains.dokka"
......@@ -115,53 +334,45 @@ configure(allprojects.findAll { (it.name != "framework-bom") } ) { project ->
configDir = rootProject.file("src/checkstyle")
}
repositories {
mavenCentral()
maven { url "https://repo.spring.io/libs-release" }
maven { url "https://repo.spring.io/milestone" } // Reactor
}
dependencies {
testCompile("org.junit.jupiter:junit-jupiter-api")
testCompile("org.junit.jupiter:junit-jupiter-params")
testCompile("org.mockito:mockito-core:3.0.0") {
exclude group: "org.hamcrest", module: "hamcrest-core"
}
testCompile("org.mockito:mockito-junit-jupiter:3.0.0")
testCompile("io.mockk:mockk:1.9.3")
testCompile("org.hamcrest:hamcrest:2.1")
testCompile("org.assertj:assertj-core:3.13.1")
testCompile("org.mockito:mockito-core")
testCompile("org.mockito:mockito-junit-jupiter")
testCompile("io.mockk:mockk")
testCompile("org.hamcrest:hamcrest")
testCompile("org.assertj:assertj-core")
// Pull in the latest JUnit 5 Launcher API to ensure proper support in IDEs.
testRuntime("org.junit.platform:junit-platform-launcher")
testRuntime("org.junit.jupiter:junit-jupiter-engine")
testRuntime("org.apache.logging.log4j:log4j-core:${log4jVersion}")
testRuntime("org.apache.logging.log4j:log4j-slf4j-impl:${log4jVersion}")
testRuntime("org.apache.logging.log4j:log4j-jul:${log4jVersion}")
testRuntime("org.apache.logging.log4j:log4j-core")
testRuntime("org.apache.logging.log4j:log4j-slf4j-impl")
testRuntime("org.apache.logging.log4j:log4j-jul")
// JSR-305 only used for non-required meta-annotations
compileOnly("com.google.code.findbugs:jsr305:3.0.2")
testCompileOnly("com.google.code.findbugs:jsr305:3.0.2")
compileOnly("com.google.code.findbugs:jsr305")
testCompileOnly("com.google.code.findbugs:jsr305")
checkstyle("io.spring.javaformat:spring-javaformat-checkstyle:0.0.15")
}
ext.javadocLinks = [
"https://docs.oracle.com/javase/8/docs/api/",
"https://docs.oracle.com/javaee/7/api/",
"https://docs.oracle.com/cd/E13222_01/wls/docs90/javadocs/", // CommonJ
"https://www.ibm.com/support/knowledgecenter/SS7JFU_8.5.5/com.ibm.websphere.javadoc.doc/web/apidocs/",
"https://glassfish.java.net/nonav/docs/v3/api/",
"https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/",
"https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/",
"https://tiles.apache.org/tiles-request/apidocs/",
"https://tiles.apache.org/framework/apidocs/",
"https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/",
"https://www.ehcache.org/apidocs/2.10.4",
"https://www.quartz-scheduler.org/api/2.3.0/",
"https://fasterxml.github.io/jackson-core/javadoc/2.9/",
"https://fasterxml.github.io/jackson-databind/javadoc/2.9/",
"https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/",
"https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/",
"https://junit.org/junit4/javadoc/4.12/",
"https://junit.org/junit5/docs/${junit5Version}/api/"
"https://docs.oracle.com/javase/8/docs/api/",
"https://docs.oracle.com/javaee/7/api/",
"https://docs.oracle.com/cd/E13222_01/wls/docs90/javadocs/", // CommonJ
"https://www.ibm.com/support/knowledgecenter/SS7JFU_8.5.5/com.ibm.websphere.javadoc.doc/web/apidocs/",
"https://glassfish.java.net/nonav/docs/v3/api/",
"https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/",
"https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/",
"https://tiles.apache.org/tiles-request/apidocs/",
"https://tiles.apache.org/framework/apidocs/",
"https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/",
"https://www.ehcache.org/apidocs/2.10.4",
"https://www.quartz-scheduler.org/api/2.3.0/",
"https://fasterxml.github.io/jackson-core/javadoc/2.9/",
"https://fasterxml.github.io/jackson-databind/javadoc/2.9/",
"https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/",
"https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/",
"https://junit.org/junit4/javadoc/4.12/",
"https://junit.org/junit5/docs/5.5.1/api/"
] as String[]
}
......@@ -190,12 +401,6 @@ configure(rootProject) {
}
}
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
}
}
dependencies {
asciidoctor("io.spring.asciidoctor:spring-asciidoctor-extensions:0.1.3.RELEASE")
}
......
......@@ -13,10 +13,10 @@ dependencies {
testCompile(project(":spring-test"))
testCompile(project(":spring-tx"))
testCompile(project(":spring-web"))
testCompile("javax.inject:javax.inject:1")
testCompile("javax.resource:javax.resource-api:1.7.1")
testCompile("javax.servlet:javax.servlet-api:4.0.1")
testCompile("org.aspectj:aspectjweaver:${aspectjVersion}")
testCompile("org.hsqldb:hsqldb:${hsqldbVersion}")
testCompile("org.hibernate:hibernate-core:5.1.17.Final")
testCompile("javax.inject:javax.inject")
testCompile("javax.resource:javax.resource-api")
testCompile("javax.servlet:javax.servlet-api")
testCompile("org.aspectj:aspectjweaver")
testCompile("org.hsqldb:hsqldb")
testCompile("org.hibernate:hibernate-core")
}
......@@ -3,7 +3,7 @@ description = "Spring AOP"
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
optional("org.aspectj:aspectjweaver:${aspectjVersion}")
optional("org.apache.commons:commons-pool2:2.6.0")
optional("com.jamonapi:jamon:2.81")
optional("org.aspectj:aspectjweaver")
optional("org.apache.commons:commons-pool2")
optional("com.jamonapi:jamon")
}
......@@ -8,24 +8,24 @@ sourceSets.main.java.srcDirs = files()
sourceSets.test.aspectj.srcDir "src/test/java"
sourceSets.test.java.srcDirs = files()
aspectj.version = aspectjVersion
aspectj.version = dependencyManagement.managedVersions['org.aspectj:aspectjweaver']
dependencies {
aspect(project(":spring-orm"))
compile("org.aspectj:aspectjweaver:${aspectjVersion}")
compileOnly("org.aspectj:aspectjrt:${aspectjVersion}")
compile("org.aspectj:aspectjweaver")
compileOnly("org.aspectj:aspectjrt")
optional(project(":spring-aop")) // for @Async support
optional(project(":spring-beans")) // for @Configurable support
optional(project(":spring-context")) // for @Enable* support
optional(project(":spring-context-support")) // for JavaMail and JSR-107 support
optional(project(":spring-orm")) // for JPA exception translation support
optional(project(":spring-tx")) // for JPA, @Transactional support
optional("javax.cache:cache-api:1.1.0") // for JCache aspect
optional("javax.transaction:javax.transaction-api:1.3") // for @javax.transaction.Transactional support
optional("javax.cache:cache-api") // for JCache aspect
optional("javax.transaction:javax.transaction-api") // for @javax.transaction.Transactional support
testCompile(project(":spring-core")) // for CodeStyleAspect
testCompile(project(":spring-test"))
testCompile("javax.mail:javax.mail-api:1.6.2")
testCompileOnly("org.aspectj:aspectjrt:${aspectjVersion}")
testCompile("javax.mail:javax.mail-api")
testCompileOnly("org.aspectj:aspectjrt")
}
eclipse.project {
......
......@@ -5,12 +5,12 @@ apply plugin: "kotlin"
dependencies {
compile(project(":spring-core"))
optional("javax.inject:javax.inject:1")
optional("javax.inject:javax.inject")
optional("org.yaml:snakeyaml:1.24")
optional("org.codehaus.groovy:groovy-xml:${groovyVersion}")
optional("org.codehaus.groovy:groovy-xml")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
testCompile("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
testCompile("org.apache.tomcat.embed:tomcat-embed-core")
}
// This module does joint compilation for Java and Groovy code with the compileGroovy task.
......
......@@ -2,8 +2,8 @@ description = "Spring Context Indexer"
dependencies {
testCompile(project(":spring-context"))
testCompile("javax.inject:javax.inject:1")
testCompile("javax.annotation:javax.annotation-api:1.3.2")
testCompile("javax.transaction:javax.transaction-api:1.3")
testCompile("org.eclipse.persistence:javax.persistence:2.2.0")
testCompile("javax.inject:javax.inject")
testCompile("javax.annotation:javax.annotation-api")
testCompile("javax.transaction:javax.transaction-api")
testCompile("org.eclipse.persistence:javax.persistence")
}
......@@ -6,20 +6,20 @@ dependencies {
compile(project(":spring-core"))
optional(project(":spring-jdbc")) // for Quartz support
optional(project(":spring-tx")) // for Quartz support
optional("javax.activation:javax.activation-api:1.2.0")
optional("javax.mail:javax.mail-api:1.6.2")
optional("javax.cache:cache-api:1.1.0")
optional("com.github.ben-manes.caffeine:caffeine:2.7.0")
optional("net.sf.ehcache:ehcache:2.10.4")
optional("org.quartz-scheduler:quartz:2.3.1")
optional("org.codehaus.fabric3.api:commonj:1.1.0")
optional("org.freemarker:freemarker:${freemarkerVersion}")
optional("javax.activation:javax.activation-api")
optional("javax.mail:javax.mail-api")
optional("javax.cache:cache-api")
optional("com.github.ben-manes.caffeine:caffeine")
optional("net.sf.ehcache:ehcache")
optional("org.quartz-scheduler:quartz")
optional("org.codehaus.fabric3.api:commonj")
optional("org.freemarker:freemarker")
testCompile(project(":spring-context"))
testCompile("org.hsqldb:hsqldb:${hsqldbVersion}")
testCompile("org.hibernate:hibernate-validator:6.0.17.Final")
testCompile("javax.annotation:javax.annotation-api:1.3.2")
testRuntime("org.ehcache:jcache:1.0.1")
testRuntime("org.ehcache:ehcache:3.4.0")
testRuntime("org.glassfish:javax.el:3.0.1-b08")
testRuntime("com.sun.mail:javax.mail:1.6.2")
testCompile("org.hsqldb:hsqldb")
testCompile("org.hibernate:hibernate-validator")
testCompile("javax.annotation:javax.annotation-api")
testRuntime("org.ehcache:jcache")
testRuntime("org.ehcache:ehcache")
testRuntime("org.glassfish:javax.el")
testRuntime("com.sun.mail:javax.mail")
}
......@@ -3,45 +3,40 @@ description = "Spring Context"
apply plugin: "groovy"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
}
}
dependencies {
compile(project(":spring-aop"))
compile(project(":spring-beans"))
compile(project(":spring-core"))
compile(project(":spring-expression"))
optional(project(":spring-instrument"))
optional("javax.annotation:javax.annotation-api:1.3.2")
optional("javax.ejb:javax.ejb-api:3.2")
optional("javax.enterprise.concurrent:javax.enterprise.concurrent-api:1.0")
optional("javax.inject:javax.inject:1")
optional("javax.interceptor:javax.interceptor-api:1.2.2")
optional("javax.money:money-api:1.0.3")
optional("javax.annotation:javax.annotation-api")
optional("javax.ejb:javax.ejb-api")
optional("javax.enterprise.concurrent:javax.enterprise.concurrent-api")
optional("javax.inject:javax.inject")
optional("javax.interceptor:javax.interceptor-api")
optional("javax.money:money-api")
// TODO: overriding 2.0.1.Final, because of LocalValidatorFactoryBean
optional("javax.validation:validation-api:1.1.0.Final")
optional("javax.xml.ws:jaxws-api:2.3.1")
optional("org.aspectj:aspectjweaver:${aspectjVersion}")
optional("org.codehaus.groovy:groovy:${groovyVersion}")
optional("org.beanshell:bsh:2.0b5")
optional("joda-time:joda-time:2.10.1")
optional("javax.xml.ws:jaxws-api")
optional("org.aspectj:aspectjweaver")
optional("org.codehaus.groovy:groovy")
optional("org.beanshell:bsh")
optional("joda-time:joda-time")
optional("org.hibernate:hibernate-validator:5.4.3.Final")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("org.reactivestreams:reactive-streams")
testCompile("io.projectreactor:reactor-core")
testCompile("org.codehaus.groovy:groovy-jsr223:${groovyVersion}")
testCompile("org.codehaus.groovy:groovy-test:${groovyVersion}")
testCompile("org.codehaus.groovy:groovy-xml:${groovyVersion}")
testCompile("org.apache.commons:commons-pool2:2.6.0")
testCompile("javax.inject:javax.inject-tck:1")
testCompile("org.codehaus.groovy:groovy-jsr223")
testCompile("org.codehaus.groovy:groovy-test")
testCompile("org.codehaus.groovy:groovy-xml")
testCompile("org.apache.commons:commons-pool2")
testCompile("javax.inject:javax.inject-tck")
// Substitute for "javax.management:jmxremote_optional:1.0.1_04" which
// is not available on Maven Central
testRuntime("org.glassfish.external:opendmk_jmxremote_optional_jar:1.0-b01-ea")
testCompile("org.awaitility:awaitility:3.1.3")
testRuntime("javax.xml.bind:jaxb-api:2.3.1")
testRuntime("org.glassfish:javax.el:3.0.1-b08")
testRuntime("org.javamoney:moneta:1.3")
testRuntime("org.glassfish.external:opendmk_jmxremote_optional_jar")
testCompile("org.awaitility:awaitility")
testRuntime("javax.xml.bind:jaxb-api")
testRuntime("org.glassfish:javax.el")
testRuntime("org.javamoney:moneta")
}
......@@ -2,13 +2,6 @@ description = "Spring Core"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
}
}
// spring-core includes asm and repackages cglib, inlining both into the spring-core jar.
// cglib itself depends on asm and is therefore further transformed by the JarJar task to
// depend on org.springframework.asm; this avoids including two different copies of asm.
......@@ -76,24 +69,22 @@ dependencies {
compile(files(objenesisRepackJar))
compile(project(":spring-jcl"))
compileOnly(project(":kotlin-coroutines"))
optional("net.sf.jopt-simple:jopt-simple:5.0.4")
optional("org.aspectj:aspectjweaver:${aspectjVersion}")
optional("net.sf.jopt-simple:jopt-simple")
optional("org.aspectj:aspectjweaver")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("io.projectreactor:reactor-core")
optional("io.reactivex:rxjava:${rxjavaVersion}")
optional("io.reactivex:rxjava-reactive-streams:${rxjavaAdapterVersion}")
optional("io.reactivex.rxjava2:rxjava:${rxjava2Version}")
optional("io.reactivex:rxjava")
optional("io.reactivex:rxjava-reactive-streams")
optional("io.reactivex.rxjava2:rxjava")
optional("io.netty:netty-buffer")
testCompile("io.projectreactor:reactor-test")
testCompile("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
testCompile("com.google.code.findbugs:jsr305:3.0.2")
testCompile("org.xmlunit:xmlunit-assertj:2.6.2")
testCompile("org.xmlunit:xmlunit-matchers:2.6.2")
testCompile("javax.xml.bind:jaxb-api:2.3.1")
testCompile("com.fasterxml.woodstox:woodstox-core:5.2.0") {
exclude group: "stax", module: "stax-api"
}
testCompile("org.apache.tomcat.embed:tomcat-embed-core")
testCompile("com.google.code.findbugs:jsr305")
testCompile("org.xmlunit:xmlunit-assertj")
testCompile("org.xmlunit:xmlunit-matchers")
testCompile("javax.xml.bind:jaxb-api")
testCompile("com.fasterxml.woodstox:woodstox-core")
testCompile(project(":kotlin-coroutines"))
}
......
description = "Spring Commons Logging Bridge"
dependencies {
optional("org.apache.logging.log4j:log4j-api:${log4jVersion}")
optional("org.slf4j:slf4j-api:${slf4jVersion}")
optional("org.apache.logging.log4j:log4j-api")
optional("org.slf4j:slf4j-api")
}
......@@ -7,11 +7,11 @@ dependencies {
compile(project(":spring-core"))
compile(project(":spring-tx"))
optional(project(":spring-context")) // for JndiDataSourceLookup
optional("javax.transaction:javax.transaction-api:1.3")
optional("org.hsqldb:hsqldb:${hsqldbVersion}")
optional("com.h2database:h2:1.4.199")
optional("org.apache.derby:derby:10.14.2.0")
optional("org.apache.derby:derbyclient:10.14.2.0")
optional("javax.transaction:javax.transaction-api")
optional("org.hsqldb:hsqldb")
optional("com.h2database:h2")
optional("org.apache.derby:derby")
optional("org.apache.derby:derbyclient")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
}
......@@ -5,12 +5,12 @@ dependencies {
compile(project(":spring-core"))
compile(project(":spring-messaging"))
compile(project(":spring-tx"))
compileOnly("javax.jms:javax.jms-api:2.0.1")
compileOnly("javax.jms:javax.jms-api")
optional(project(":spring-aop"))
optional(project(":spring-context"))
optional(project(":spring-oxm"))
optional("javax.resource:javax.resource-api:1.7.1")
optional("javax.transaction:javax.transaction-api:1.3")
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
testImplementation("javax.jms:javax.jms-api:2.0.1")
optional("javax.resource:javax.resource-api")
optional("javax.transaction:javax.transaction-api")
optional("com.fasterxml.jackson.core:jackson-databind")
testImplementation("javax.jms:javax.jms-api")
}
......@@ -2,13 +2,6 @@ description = "Spring Messaging"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
}
}
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
......@@ -16,29 +9,27 @@ dependencies {
optional(project(":spring-context"))
optional(project(":spring-oxm"))
optional("io.projectreactor.netty:reactor-netty")
optional("io.rsocket:rsocket-core:${rsocketVersion}")
optional("io.rsocket:rsocket-transport-netty:${rsocketVersion}")
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
optional("javax.xml.bind:jaxb-api:2.3.1")
optional("io.rsocket:rsocket-core")
optional("io.rsocket:rsocket-transport-netty")
optional("com.fasterxml.jackson.core:jackson-databind")
optional("javax.xml.bind:jaxb-api")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-core")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testCompile("javax.inject:javax.inject-tck:1")
testCompile("javax.servlet:javax.servlet-api:4.0.1")
testCompile("javax.validation:validation-api:1.1.0.Final")
testCompile("com.thoughtworks.xstream:xstream:1.4.11.1")
testCompile("org.apache.activemq:activemq-broker:5.8.0")
testCompile("org.apache.activemq:activemq-kahadb-store:5.8.0") {
exclude group: "org.springframework", module: "spring-context"
}
testCompile("org.apache.activemq:activemq-stomp:5.8.0")
testCompile("javax.inject:javax.inject-tck")
testCompile("javax.servlet:javax.servlet-api")
testCompile("javax.validation:validation-api")
testCompile("com.thoughtworks.xstream:xstream")
testCompile("org.apache.activemq:activemq-broker")
testCompile("org.apache.activemq:activemq-kahadb-store")
testCompile("org.apache.activemq:activemq-stomp")
testCompile("io.projectreactor:reactor-test")
testCompile "io.reactivex.rxjava2:rxjava:${rxjava2Version}"
testCompile "io.reactivex.rxjava2:rxjava"
testCompile("org.jetbrains.kotlin:kotlin-reflect")
testCompile("org.jetbrains.kotlin:kotlin-stdlib")
testCompile("org.xmlunit:xmlunit-assertj:2.6.2")
testCompile("org.xmlunit:xmlunit-matchers:2.6.2")
testCompile("org.xmlunit:xmlunit-assertj")
testCompile("org.xmlunit:xmlunit-matchers")
testCompile(project(":kotlin-coroutines"))
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testRuntime("com.sun.activation:javax.activation:1.2.0")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
testRuntime("com.sun.activation:javax.activation")
}
......@@ -8,10 +8,10 @@ dependencies {
optional(project(":spring-aop"))
optional(project(":spring-context"))
optional(project(":spring-web"))
optional("org.eclipse.persistence:org.eclipse.persistence.jpa:2.7.4")
optional("org.hibernate:hibernate-core:5.4.4.Final")
optional("org.eclipse.persistence:org.eclipse.persistence.jpa")
optional("org.hibernate:hibernate-core")
optional("javax.servlet:javax.servlet-api:3.1.0")
testCompile("org.aspectj:aspectjweaver:${aspectjVersion}")
testCompile("org.hsqldb:hsqldb:${hsqldbVersion}")
testRuntime("javax.xml.bind:jaxb-api:2.3.1")
testCompile("org.aspectj:aspectjweaver")
testCompile("org.hsqldb:hsqldb")
testRuntime("javax.xml.bind:jaxb-api")
}
......@@ -57,23 +57,20 @@ task genJaxb {
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
optional("javax.xml.bind:jaxb-api:2.3.1")
optional("javax.activation:javax.activation-api:1.2.0")
optional("com.thoughtworks.xstream:xstream:1.4.11.1") {
exclude group: "xpp3", module: "xpp3_min"
exclude group: "xmlpull", module: "xmlpull"
}
optional("org.jibx:jibx-run:1.3.1")
optional("javax.xml.bind:jaxb-api")
optional("javax.activation:javax.activation-api")
optional("com.thoughtworks.xstream:xstream")
optional("org.jibx:jibx-run")
testCompile(project(":spring-context"))
testCompile("org.ogce:xpp3:1.1.6")
testCompile("org.codehaus.jettison:jettison:1.3.8") {
testCompile("org.ogce:xpp3")
testCompile("org.codehaus.jettison:jettison") {
exclude group: "stax", module: "stax-api"
}
testCompile(files(genJaxb.classesDir).builtBy(genJaxb))
testCompile("org.xmlunit:xmlunit-assertj:2.6.2")
testCompile("org.xmlunit:xmlunit-matchers:2.6.2")
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testCompile("org.xmlunit:xmlunit-assertj")
testCompile("org.xmlunit:xmlunit-matchers")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
}
// JiBX compiler is currently not compatible with JDK 9
......
......@@ -2,13 +2,6 @@ description = "Spring TestContext Framework"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
}
}
dependencies {
compile(project(":spring-core"))
optional(project(":spring-aop"))
......@@ -21,40 +14,27 @@ dependencies {
optional(project(":spring-webflux"))
optional(project(":spring-webmvc"))
optional(project(":spring-websocket"))
optional("javax.activation:javax.activation-api:1.2.0")
optional("javax.el:javax.el-api:3.0.1-b04")
optional("javax.inject:javax.inject:1")
optional("javax.servlet:javax.servlet-api:4.0.1")
optional("javax.servlet.jsp:javax.servlet.jsp-api:2.3.2-b02")
optional("javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:1.2.1")
optional("javax.xml.bind:jaxb-api:2.3.1")
optional("javax.websocket:javax.websocket-api:1.1")
optional("junit:junit:4.13-beta-3") {
exclude group: "org.hamcrest", module: "hamcrest-core"
}
optional("javax.activation:javax.activation-api")
optional("javax.el:javax.el-api")
optional("javax.inject:javax.inject")
optional("javax.servlet:javax.servlet-api")
optional("javax.servlet.jsp:javax.servlet.jsp-api")
optional("javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api")
optional("javax.xml.bind:jaxb-api")
optional("javax.websocket:javax.websocket-api")
optional("junit:junit")
optional("org.junit.jupiter:junit-jupiter-api")
optional("org.testng:testng:6.14.3")
optional("org.aspectj:aspectjweaver:${aspectjVersion}")
optional("org.codehaus.groovy:groovy:${groovyVersion}")
optional("org.hamcrest:hamcrest:2.1")
optional("org.apache.taglibs:taglibs-standard-jstlel:1.2.5") {
exclude group: "org.apache.taglibs", module: "taglibs-standard-spec"
}
optional("net.sourceforge.htmlunit:htmlunit:2.35.0") {
exclude group: "commons-logging", module: "commons-logging"
}
optional("org.seleniumhq.selenium:htmlunit-driver:2.35.1") {
exclude group: "commons-logging", module: "commons-logging"
}
optional("org.seleniumhq.selenium:selenium-java:3.141.59") {
exclude group: "commons-logging", module: "commons-logging"
exclude group: "io.netty", module: "netty"
}
optional("org.xmlunit:xmlunit-matchers:2.6.2") {
exclude group: "org.hamcrest", module: "hamcrest-core"
}
optional("org.skyscreamer:jsonassert:1.5.0")
optional("com.jayway.jsonpath:json-path:2.4.0")
optional("org.testng:testng")
optional("org.aspectj:aspectjweaver")
optional("org.codehaus.groovy:groovy")
optional("org.hamcrest:hamcrest")
optional("org.apache.taglibs:taglibs-standard-jstlel")
optional("net.sourceforge.htmlunit:htmlunit")
optional("org.seleniumhq.selenium:htmlunit-driver")
optional("org.seleniumhq.selenium:selenium-java")
optional("org.xmlunit:xmlunit-matchers")
optional("org.skyscreamer:jsonassert")
optional("com.jayway.jsonpath:json-path")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("io.projectreactor:reactor-test")
......@@ -62,39 +42,36 @@ dependencies {
optional("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testCompile(project(":spring-context-support"))
testCompile(project(":spring-oxm"))
testCompile("javax.annotation:javax.annotation-api:1.3.2")
testCompile("javax.cache:cache-api:1.1.0")
testCompile("javax.ejb:javax.ejb-api:3.2")
testCompile("javax.interceptor:javax.interceptor-api:1.2.2")
testCompile("javax.mail:javax.mail-api:1.6.2")
testCompile("org.hibernate:hibernate-core:5.4.3.Final")
testCompile("org.hibernate:hibernate-validator:6.0.17.Final")
testCompile("javax.annotation:javax.annotation-api")
testCompile("javax.cache:cache-api")
testCompile("javax.ejb:javax.ejb-api")
testCompile("javax.interceptor:javax.interceptor-api")
testCompile("javax.mail:javax.mail-api")
testCompile("org.hibernate:hibernate-core")
testCompile("org.hibernate:hibernate-validator")
testCompile("javax.validation:validation-api")
testCompile("org.junit.platform:junit-platform-runner") {
exclude group: "junit", module: "junit"
}
testCompile("org.junit.platform:junit-platform-testkit")
testCompile("org.junit.jupiter:junit-jupiter-params")
testCompile("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
testCompile("com.thoughtworks.xstream:xstream:1.4.11.1")
testCompile("com.rometools:rome:1.12.1")
testCompile("org.apache.tiles:tiles-api:${tiles3Version}")
testCompile("org.apache.tiles:tiles-core:${tiles3Version}", withoutJclOverSlf4j)
testCompile("org.apache.tiles:tiles-servlet:${tiles3Version}", withoutJclOverSlf4j)
testCompile("org.hsqldb:hsqldb:${hsqldbVersion}")
testCompile("org.apache.httpcomponents:httpclient:4.5.9") {
exclude group: "commons-logging", module: "commons-logging"
}
testCompile("com.fasterxml.jackson.core:jackson-databind")
testCompile("com.thoughtworks.xstream:xstream")
testCompile("com.rometools:rome")
testCompile("org.apache.tiles:tiles-api")
testCompile("org.apache.tiles:tiles-core")
testCompile("org.apache.tiles:tiles-servlet")
testCompile("org.hsqldb:hsqldb")
testCompile("org.apache.httpcomponents:httpclient")
testCompile("io.projectreactor.netty:reactor-netty")
testCompile("de.bechte.junit:junit-hierarchicalcontextrunner:4.12.1") {
exclude group: "junit", module: "junit"
}
testCompile("de.bechte.junit:junit-hierarchicalcontextrunner")
testRuntime("org.junit.jupiter:junit-jupiter-engine")
testRuntime("org.junit.vintage:junit-vintage-engine") {
exclude group: "junit", module: "junit"
}
testRuntime("org.glassfish:javax.el:3.0.1-b08")
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testRuntime("org.glassfish:javax.el")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
}
task junit(type: Test) {
......
description = "Spring Transaction"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
}
}
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
optional(project(":spring-aop"))
optional(project(":spring-context")) // for JCA, @EnableTransactionManagement
optional("javax.ejb:javax.ejb-api:3.2")
optional("javax.interceptor:javax.interceptor-api:1.2.2")
optional("javax.resource:javax.resource-api:1.7.1")
optional("javax.transaction:javax.transaction-api:1.3")
optional("com.ibm.websphere:uow:6.0.2.17")
optional("javax.ejb:javax.ejb-api")
optional("javax.interceptor:javax.interceptor-api")
optional("javax.resource:javax.resource-api")
optional("javax.transaction:javax.transaction-api")
optional("com.ibm.websphere:uow")
optional("io.projectreactor:reactor-core")
optional("io.vavr:vavr:0.10.0")
testCompile("org.aspectj:aspectjweaver:${aspectjVersion}")
testCompile("org.codehaus.groovy:groovy:${groovyVersion}")
testCompile("org.eclipse.persistence:javax.persistence:2.2.0")
optional("io.vavr:vavr")
testCompile("org.aspectj:aspectjweaver")
testCompile("org.codehaus.groovy:groovy")
testCompile("org.eclipse.persistence:javax.persistence")
testCompile("io.projectreactor:reactor-test")
}
......@@ -2,14 +2,6 @@ description = "Spring Web"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
mavenBom "org.eclipse.jetty:jetty-bom:${jettyVersion}"
}
}
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
......@@ -17,74 +9,66 @@ dependencies {
optional(project(":spring-context"))
optional(project(":spring-oxm"))
optional("javax.servlet:javax.servlet-api:3.1.0")
optional("javax.servlet.jsp:javax.servlet.jsp-api:2.3.2-b02")
optional("javax.el:javax.el-api:3.0.1-b04")
optional("javax.faces:javax.faces-api:2.2")
optional("javax.json.bind:javax.json.bind-api:1.0")
optional("javax.mail:javax.mail-api:1.6.2")
optional("javax.validation:validation-api:1.1.0.Final")
optional("javax.xml.bind:jaxb-api:2.3.1")
optional("javax.xml.ws:jaxws-api:2.3.1")
optional("org.glassfish.main:javax.jws:4.0-b33")
optional("io.reactivex:rxjava:${rxjavaVersion}")
optional("io.reactivex:rxjava-reactive-streams:${rxjavaAdapterVersion}")
optional("io.reactivex.rxjava2:rxjava:${rxjava2Version}")
optional("javax.servlet.jsp:javax.servlet.jsp-api")
optional("javax.el:javax.el-api")
optional("javax.faces:javax.faces-api")
optional("javax.json.bind:javax.json.bind-api")
optional("javax.mail:javax.mail-api")
optional("javax.validation:validation-api")
optional("javax.xml.bind:jaxb-api")
optional("javax.xml.ws:jaxws-api")
optional("org.glassfish.main:javax.jws")
optional("io.reactivex:rxjava")
optional("io.reactivex:rxjava-reactive-streams")
optional("io.reactivex.rxjava2:rxjava")
optional("io.netty:netty-all")
optional("io.projectreactor.netty:reactor-netty")
optional("io.undertow:undertow-core:${undertowVersion}")
optional("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
optional("io.undertow:undertow-core")
optional("org.apache.tomcat.embed:tomcat-embed-core")
optional("org.eclipse.jetty:jetty-server") {
exclude group: "javax.servlet", module: "javax.servlet-api"
}
optional("org.eclipse.jetty:jetty-servlet") {
exclude group: "javax.servlet", module: "javax.servlet-api"
}
optional("org.eclipse.jetty:jetty-reactive-httpclient:1.0.3")
optional("com.squareup.okhttp3:okhttp:3.14.2")
optional("org.apache.httpcomponents:httpclient:4.5.9") {
exclude group: "commons-logging", module: "commons-logging"
}
optional("org.apache.httpcomponents:httpasyncclient:4.1.4") {
exclude group: "commons-logging", module: "commons-logging"
}
optional("commons-fileupload:commons-fileupload:1.4")
optional("org.synchronoss.cloud:nio-multipart-parser:1.1.0")
optional("com.fasterxml.woodstox:woodstox-core:5.2.0") { // woodstox before aalto
exclude group: "stax", module: "stax-api"
}
optional("com.fasterxml:aalto-xml:1.1.1")
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:${jackson2Version}")
optional("com.google.code.gson:gson:2.8.5")
optional("com.google.protobuf:protobuf-java-util:3.9.0")
optional("com.googlecode.protobuf-java-format:protobuf-java-format:1.4")
optional("com.rometools:rome:1.12.1")
optional("com.caucho:hessian:4.0.51")
optional("org.codehaus.groovy:groovy:${groovyVersion}")
optional("org.eclipse.jetty:jetty-reactive-httpclient")
optional("com.squareup.okhttp3:okhttp")
optional("org.apache.httpcomponents:httpclient")
optional("org.apache.httpcomponents:httpasyncclient")
optional("commons-fileupload:commons-fileupload")
optional("org.synchronoss.cloud:nio-multipart-parser")
optional("com.fasterxml.woodstox:woodstox-core")
optional("com.fasterxml:aalto-xml")
optional("com.fasterxml.jackson.core:jackson-databind")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-cbor")
optional("com.google.code.gson:gson")
optional("com.google.protobuf:protobuf-java-util")
optional("com.googlecode.protobuf-java-format:protobuf-java-format")
optional("com.rometools:rome")
optional("com.caucho:hessian")
optional("org.codehaus.groovy:groovy")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
testCompile("io.projectreactor:reactor-test")
testCompile("org.apache.taglibs:taglibs-standard-jstlel:1.2.5") {
exclude group: "org.apache.taglibs", module: "taglibs-standard-spec"
}
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-jdk8:${jackson2Version}")
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-joda:${jackson2Version}")
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:${jackson2Version}")
testCompile("com.fasterxml.jackson.module:jackson-module-kotlin:${jackson2Version}")
testCompile("org.apache.tomcat:tomcat-util:${tomcatVersion}")
testCompile("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
testCompile("org.apache.taglibs:taglibs-standard-jstlel")
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-jdk8")
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-joda")
testCompile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310")
testCompile("com.fasterxml.jackson.module:jackson-module-kotlin")
testCompile("org.apache.tomcat:tomcat-util")
testCompile("org.apache.tomcat.embed:tomcat-embed-core")
testCompile("org.eclipse.jetty:jetty-server")
testCompile("org.eclipse.jetty:jetty-servlet")
testCompile("com.squareup.okhttp3:mockwebserver:3.14.2")
testCompile("com.squareup.okhttp3:mockwebserver")
testCompile("org.jetbrains.kotlin:kotlin-reflect")
testCompile("org.skyscreamer:jsonassert:1.5.0")
testCompile("org.xmlunit:xmlunit-assertj:2.6.2")
testCompile("org.xmlunit:xmlunit-matchers:2.6.2")
testRuntime("com.sun.mail:javax.mail:1.6.2")
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testRuntime("javax.json:javax.json-api:1.1.4")
testRuntime("org.apache.johnzon:johnzon-jsonb:1.1.12")
testCompile("org.skyscreamer:jsonassert")
testCompile("org.xmlunit:xmlunit-assertj")
testCompile("org.xmlunit:xmlunit-matchers")
testRuntime("com.sun.mail:javax.mail")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
testRuntime("javax.json:javax.json-api")
testRuntime("org.apache.johnzon:johnzon-jsonb")
}
......@@ -2,14 +2,6 @@ description = "Spring WebFlux"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
mavenBom "org.eclipse.jetty:jetty-bom:${jettyVersion}"
}
}
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
......@@ -18,54 +10,48 @@ dependencies {
compileOnly(project(":kotlin-coroutines"))
optional(project(":spring-context"))
optional(project(":spring-context-support")) // for FreeMarker support
optional("javax.servlet:javax.servlet-api:4.0.1")
optional("javax.websocket:javax.websocket-api:1.1")
optional("org.webjars:webjars-locator-core:0.37")
optional("org.freemarker:freemarker:${freemarkerVersion}")
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile:${jackson2Version}")
optional("io.reactivex:rxjava:${rxjavaVersion}")
optional("io.reactivex:rxjava-reactive-streams:${rxjavaAdapterVersion}")
optional("javax.servlet:javax.servlet-api")
optional("javax.websocket:javax.websocket-api")
optional("org.webjars:webjars-locator-core")
optional("org.freemarker:freemarker")
optional("com.fasterxml.jackson.core:jackson-databind")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile")
optional("io.reactivex:rxjava")
optional("io.reactivex:rxjava-reactive-streams")
optional("io.projectreactor.netty:reactor-netty")
optional("org.apache.tomcat:tomcat-websocket:${tomcatVersion}") {
exclude group: "org.apache.tomcat", module: "tomcat-websocket-api"
exclude group: "org.apache.tomcat", module: "tomcat-servlet-api"
}
optional("org.apache.tomcat:tomcat-websocket")
optional("org.eclipse.jetty.websocket:websocket-server") {
exclude group: "javax.servlet", module: "javax.servlet"
}
optional("io.undertow:undertow-websockets-jsr:${undertowVersion}") {
exclude group: "org.jboss.spec.javax.websocket", module: "jboss-websocket-api_1.1_spec"
}
optional("org.apache.httpcomponents:httpclient:4.5.9") {
exclude group: "commons-logging", module: "commons-logging"
}
optional("io.undertow:undertow-websockets-jsr")
optional("org.apache.httpcomponents:httpclient")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("com.google.protobuf:protobuf-java-util:3.9.0")
optional("com.google.protobuf:protobuf-java-util")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-core")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testCompile("javax.xml.bind:jaxb-api:2.3.1")
testCompile("com.fasterxml:aalto-xml:1.1.1")
testCompile("org.hibernate:hibernate-validator:6.0.17.Final")
testCompile "io.reactivex.rxjava2:rxjava:${rxjava2Version}"
testCompile("javax.xml.bind:jaxb-api")
testCompile("com.fasterxml:aalto-xml")
testCompile("org.hibernate:hibernate-validator")
testCompile("javax.validation:validation-api")
testCompile "io.reactivex.rxjava2:rxjava"
testCompile("io.projectreactor:reactor-test")
testCompile("io.undertow:undertow-core:${undertowVersion}")
testCompile("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
testCompile("org.apache.tomcat:tomcat-util:${tomcatVersion}")
testCompile("io.undertow:undertow-core")
testCompile("org.apache.tomcat.embed:tomcat-embed-core")
testCompile("org.apache.tomcat:tomcat-util")
testCompile("org.eclipse.jetty:jetty-server")
testCompile("org.eclipse.jetty:jetty-servlet")
testCompile("org.eclipse.jetty:jetty-reactive-httpclient:1.0.3")
testCompile("com.squareup.okhttp3:mockwebserver:3.14.2")
testCompile("org.eclipse.jetty:jetty-reactive-httpclient")
testCompile("com.squareup.okhttp3:mockwebserver")
testCompile(project(":kotlin-coroutines"))
testCompile("org.jetbrains.kotlin:kotlin-script-runtime")
testRuntime("org.jetbrains.kotlin:kotlin-scripting-jsr223-embeddable")
testRuntime("org.jruby:jruby:9.2.7.0")
testRuntime("org.python:jython-standalone:2.7.1")
testRuntime("org.synchronoss.cloud:nio-multipart-parser:1.1.0")
testRuntime("org.webjars:underscorejs:1.8.3")
testRuntime("org.glassfish:javax.el:3.0.1-b08")
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testRuntime("com.sun.activation:javax.activation:1.2.0")
testRuntime("org.jruby:jruby")
testRuntime("org.python:jython-standalone")
testRuntime("org.synchronoss.cloud:nio-multipart-parser")
testRuntime("org.webjars:underscorejs")
testRuntime("org.glassfish:javax.el")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
testRuntime("com.sun.activation:javax.activation")
}
......@@ -2,13 +2,6 @@ description = "Spring Web MVC"
apply plugin: "kotlin"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "org.eclipse.jetty:jetty-bom:${jettyVersion}"
}
}
dependencies {
compile(project(":spring-aop"))
compile(project(":spring-beans"))
......@@ -16,71 +9,61 @@ dependencies {
compile(project(":spring-core"))
compile(project(":spring-expression"))
compile(project(":spring-web"))
compileOnly("javax.servlet:javax.servlet-api:4.0.1")
compileOnly("javax.servlet:javax.servlet-api")
optional(project(":spring-context-support")) // for FreeMarker support
optional(project(":spring-oxm"))
optional("javax.servlet.jsp:javax.servlet.jsp-api:2.3.2-b02")
optional("javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:1.2.1")
optional("javax.el:javax.el-api:3.0.1-b04")
optional("javax.xml.bind:jaxb-api:2.3.1")
optional("org.webjars:webjars-locator-core:0.37")
optional("com.rometools:rome:1.12.1")
optional("com.github.librepdf:openpdf:1.2.21")
optional("org.apache.poi:poi-ooxml:4.1.0")
optional("org.freemarker:freemarker:${freemarkerVersion}")
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile:${jackson2Version}")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:${jackson2Version}")
optional("org.apache.tiles:tiles-api:${tiles3Version}", withoutJclOverSlf4j)
optional("org.apache.tiles:tiles-core:${tiles3Version}", withoutJclOverSlf4j)
optional("org.apache.tiles:tiles-servlet:${tiles3Version}", withoutJclOverSlf4j)
optional("org.apache.tiles:tiles-jsp:${tiles3Version}", withoutJclOverSlf4j)
optional("org.apache.tiles:tiles-el:${tiles3Version}", withoutJclOverSlf4j)
optional("org.apache.tiles:tiles-extras:${tiles3Version}") {
exclude group: "org.springframework", module: "spring-web"
exclude group: "org.slf4j", module: "jcl-over-slf4j"
}
optional("org.codehaus.groovy:groovy-templates:${groovyVersion}")
optional("javax.servlet.jsp:javax.servlet.jsp-api")
optional("javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api")
optional("javax.el:javax.el-api")
optional("javax.xml.bind:jaxb-api")
optional("org.webjars:webjars-locator-core")
optional("com.rometools:rome")
optional("com.github.librepdf:openpdf")
optional("org.apache.poi:poi-ooxml")
optional("org.freemarker:freemarker")
optional("com.fasterxml.jackson.core:jackson-databind")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-smile")
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-cbor")
optional("org.apache.tiles:tiles-api")
optional("org.apache.tiles:tiles-core")
optional("org.apache.tiles:tiles-servlet")
optional("org.apache.tiles:tiles-jsp")
optional("org.apache.tiles:tiles-el")
optional("org.apache.tiles:tiles-extras")
optional("org.codehaus.groovy:groovy-templates")
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("org.reactivestreams:reactive-streams")
testCompile("javax.servlet:javax.servlet-api:4.0.1")
testCompile("javax.servlet:javax.servlet-api")
testCompile("org.eclipse.jetty:jetty-servlet") {
exclude group: "javax.servlet", module: "javax.servlet"
}
testCompile("org.eclipse.jetty:jetty-server") {
exclude group: "javax.servlet", module: "javax.servlet"
}
testCompile("org.apache.httpcomponents:httpclient:4.5.9") {
exclude group: "commons-logging", module: "commons-logging"
}
testCompile("commons-fileupload:commons-fileupload:1.4")
testCompile("commons-io:commons-io:2.5")
testCompile("joda-time:joda-time:2.10.2")
testCompile("org.mozilla:rhino:1.7.10")
testCompile("dom4j:dom4j:1.6.1") {
exclude group: "xml-apis", module: "xml-apis"
}
testCompile("jaxen:jaxen:1.1.1") {
exclude group: "xml-apis", module: "xml-apis"
exclude group: "xom", module: "xom"
exclude group: "xerces", module: "xercesImpl"
}
testCompile("org.xmlunit:xmlunit-assertj:2.6.2")
testCompile("org.xmlunit:xmlunit-matchers:2.6.2")
testCompile("org.hibernate:hibernate-validator:6.0.17.Final")
testCompile("org.apache.httpcomponents:httpclient")
testCompile("commons-fileupload:commons-fileupload")
testCompile("commons-io:commons-io")
testCompile("joda-time:joda-time")
testCompile("org.mozilla:rhino")
testCompile("dom4j:dom4j")
testCompile("jaxen:jaxen")
testCompile("org.xmlunit:xmlunit-assertj")
testCompile("org.xmlunit:xmlunit-matchers")
testCompile("org.hibernate:hibernate-validator")
testCompile("javax.validation:validation-api")
testCompile("io.projectreactor:reactor-core")
testCompile("io.reactivex:rxjava:${rxjavaVersion}")
testCompile("io.reactivex:rxjava-reactive-streams:${rxjavaAdapterVersion}")
testCompile("io.reactivex.rxjava2:rxjava:${rxjava2Version}")
testCompile("io.reactivex:rxjava")
testCompile("io.reactivex:rxjava-reactive-streams")
testCompile("io.reactivex.rxjava2:rxjava")
testCompile("org.jetbrains.kotlin:kotlin-script-runtime")
testRuntime("org.jetbrains.kotlin:kotlin-scripting-jsr223-embeddable")
testRuntime("org.jruby:jruby:9.2.7.0")
testRuntime("org.python:jython-standalone:2.7.1")
testRuntime("org.webjars:underscorejs:1.8.3")
testRuntime("org.glassfish:javax.el:3.0.1-b08")
testRuntime("com.sun.xml.bind:jaxb-core:2.3.0.1")
testRuntime("com.sun.xml.bind:jaxb-impl:2.3.0.1")
testRuntime("com.sun.activation:javax.activation:1.2.0")
testRuntime("org.jruby:jruby")
testRuntime("org.python:jython-standalone")
testRuntime("org.webjars:underscorejs")
testRuntime("org.glassfish:javax.el")
testRuntime("com.sun.xml.bind:jaxb-core")
testRuntime("com.sun.xml.bind:jaxb-impl")
testRuntime("com.sun.activation:javax.activation")
}
description = "Spring WebSocket"
dependencyManagement {
imports {
mavenBom "io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom "io.netty:netty-bom:${nettyVersion}"
mavenBom "org.eclipse.jetty:jetty-bom:${jettyVersion}"
}
}
dependencies {
compile(project(":spring-context"))
compile(project(":spring-core"))
compile(project(":spring-web"))
optional(project(":spring-messaging"))
optional(project(":spring-webmvc"))
optional("javax.servlet:javax.servlet-api:4.0.1")
optional("javax.websocket:javax.websocket-api:1.1")
optional("org.apache.tomcat:tomcat-websocket:${tomcatVersion}") {
exclude group: "org.apache.tomcat", module: "tomcat-websocket-api"
exclude group: "org.apache.tomcat", module: "tomcat-servlet-api"
}
optional("org.glassfish.tyrus:tyrus-container-servlet:1.13.1")
optional("javax.servlet:javax.servlet-api")
optional("javax.websocket:javax.websocket-api")
optional("org.apache.tomcat:tomcat-websocket")
optional("org.glassfish.tyrus:tyrus-container-servlet")
optional("org.eclipse.jetty:jetty-webapp") {
exclude group: "javax.servlet", module: "javax.servlet"
}
......@@ -29,15 +18,10 @@ dependencies {
}
optional("org.eclipse.jetty.websocket:websocket-client")
optional("org.eclipse.jetty:jetty-client")
optional("io.undertow:undertow-servlet:${undertowVersion}") {
exclude group: "org.jboss.spec.javax.servlet", module: "jboss-servlet-api_3.1_spec"
exclude group: "org.jboss.spec.javax.annotation", module: "jboss-annotations-api_1.2_spec"
}
optional("io.undertow:undertow-websockets-jsr:${undertowVersion}") {
exclude group: "org.jboss.spec.javax.websocket", module: "jboss-websocket-api_1.1_spec"
}
optional("com.fasterxml.jackson.core:jackson-databind:${jackson2Version}")
testCompile("org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}")
testCompile("org.apache.tomcat.embed:tomcat-embed-websocket:${tomcatVersion}")
optional("io.undertow:undertow-servlet")
optional("io.undertow:undertow-websockets-jsr")
optional("com.fasterxml.jackson.core:jackson-databind")
testCompile("org.apache.tomcat.embed:tomcat-embed-core")
testCompile("org.apache.tomcat.embed:tomcat-embed-websocket")
testCompile("io.projectreactor.netty:reactor-netty")
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册