description = "Spring Web" apply plugin: "kotlin" apply plugin: "kotlinx-serialization" dependencies { api(project(":spring-beans")) api(project(":spring-core")) compileOnly("io.projectreactor.tools:blockhound") optional(project(":spring-aop")) optional(project(":spring-context")) optional(project(":spring-oxm")) optional("javax.servlet:javax.servlet-api") // Servlet 4 for mapping type 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.rxjava3:rxjava") optional("io.netty:netty-buffer") optional("io.netty:netty-handler") optional("io.netty:netty-codec-http") // Until Netty4ClientHttpRequest is removed optional("io.netty:netty-transport") // Until Netty4ClientHttpRequest is removed optional("io.projectreactor.netty:reactor-netty-http") 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") optional('org.apache.httpcomponents.client5:httpclient5') optional('org.apache.httpcomponents.core5:httpcore5-reactive') 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") optional("org.jetbrains.kotlinx:kotlinx-serialization-json") testImplementation(testFixtures(project(":spring-beans"))) testImplementation(testFixtures(project(":spring-context"))) testImplementation(testFixtures(project(":spring-core"))) testImplementation("io.projectreactor:reactor-test") testImplementation("org.apache.taglibs:taglibs-standard-jstlel") testImplementation("com.fasterxml.jackson.datatype:jackson-datatype-jdk8") testImplementation("com.fasterxml.jackson.datatype:jackson-datatype-joda") testImplementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310") testImplementation("com.fasterxml.jackson.module:jackson-module-kotlin") testImplementation("org.apache.tomcat:tomcat-util") testImplementation("org.apache.tomcat.embed:tomcat-embed-core") testImplementation("org.eclipse.jetty:jetty-server") testImplementation("org.eclipse.jetty:jetty-servlet") testImplementation("com.squareup.okhttp3:mockwebserver") testImplementation("org.jetbrains.kotlin:kotlin-reflect") testImplementation("org.skyscreamer:jsonassert") testImplementation("org.xmlunit:xmlunit-assertj") testImplementation("org.xmlunit:xmlunit-matchers") testImplementation("io.projectreactor.tools:blockhound") testRuntimeOnly("com.sun.mail:javax.mail") testRuntimeOnly("com.sun.xml.bind:jaxb-core") testRuntimeOnly("com.sun.xml.bind:jaxb-impl") testRuntimeOnly("javax.json:javax.json-api") testRuntimeOnly("org.apache.johnzon:johnzon-jsonb") testFixturesApi("javax.servlet:javax.servlet-api") testFixturesApi("org.junit.jupiter:junit-jupiter-api") testFixturesApi("org.junit.jupiter:junit-jupiter-params") testFixturesImplementation("io.projectreactor:reactor-test") testFixturesImplementation("org.apache.taglibs:taglibs-standard-jstlel") testFixturesImplementation("org.assertj:assertj-core") testFixturesImplementation("org.bouncycastle:bcpkix-jdk18on") { because("needed by Netty's SelfSignedCertificate on JDK 15+") } }