|
|
|
plugins {
|
|
|
|
id "java-library"
|
|
|
|
id "org.jetbrains.kotlin.jvm"
|
|
|
|
id "org.springframework.boot.auto-configuration"
|
|
|
|
id "org.springframework.boot.conventions"
|
|
|
|
id "org.springframework.boot.deployed"
|
|
|
|
id "org.springframework.boot.optional-dependencies"
|
|
|
|
}
|
|
|
|
|
|
|
|
description = "Spring Boot AutoConfigure"
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
api(project(":spring-boot-project:spring-boot"))
|
|
|
|
|
|
|
|
optional("com.atomikos:transactions-jdbc")
|
|
|
|
optional("com.atomikos:transactions-jta")
|
|
|
|
optional("com.fasterxml.jackson.core:jackson-databind")
|
|
|
|
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-cbor")
|
|
|
|
optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml")
|
|
|
|
optional("com.fasterxml.jackson.datatype:jackson-datatype-jsr310")
|
|
|
|
optional("com.fasterxml.jackson.module:jackson-module-parameter-names")
|
|
|
|
optional("com.google.code.gson:gson")
|
|
|
|
optional("com.hazelcast:hazelcast")
|
|
|
|
optional("com.hazelcast:hazelcast-spring")
|
|
|
|
optional("com.h2database:h2")
|
|
|
|
optional("com.nimbusds:oauth2-oidc-sdk")
|
|
|
|
optional("com.oracle.database.jdbc:ojdbc8")
|
|
|
|
optional("com.oracle.database.jdbc:ucp")
|
|
|
|
optional("com.samskivert:jmustache")
|
|
|
|
optional("com.sun.mail:jakarta.mail")
|
|
|
|
optional("de.flapdoodle.embed:de.flapdoodle.embed.mongo")
|
|
|
|
optional("io.lettuce:lettuce-core")
|
|
|
|
optional("io.projectreactor.netty:reactor-netty-http")
|
|
|
|
optional("io.r2dbc:r2dbc-spi")
|
|
|
|
optional("io.r2dbc:r2dbc-pool")
|
|
|
|
optional("io.rsocket:rsocket-core")
|
|
|
|
optional("io.rsocket:rsocket-transport-netty")
|
|
|
|
optional("io.undertow:undertow-servlet") {
|
|
|
|
exclude group: "org.jboss.spec.javax.annotation", module: "jboss-annotations-api_1.3_spec"
|
|
|
|
exclude group: "org.jboss.spec.javax.servlet", module: "jboss-servlet-api_4.0_spec"
|
|
|
|
}
|
|
|
|
optional("io.undertow:undertow-websockets-jsr") {
|
|
|
|
exclude group: "org.jboss.spec.javax.annotation", module: "jboss-annotations-api_1.3_spec"
|
|
|
|
exclude group: "org.jboss.spec.javax.servlet", module: "jboss-servlet-api_4.0_spec"
|
|
|
|
exclude group: "org.jboss.spec.javax.websocket", module: "jboss-websocket-api_1.1_spec"
|
|
|
|
}
|
|
|
|
optional("jakarta.jms:jakarta.jms-api")
|
|
|
|
optional("jakarta.mail:jakarta.mail-api")
|
|
|
|
optional("jakarta.json.bind:jakarta.json.bind-api")
|
|
|
|
optional("jakarta.persistence:jakarta.persistence-api")
|
|
|
|
optional("jakarta.transaction:jakarta.transaction-api")
|
|
|
|
optional("jakarta.validation:jakarta.validation-api")
|
|
|
|
optional("jakarta.ws.rs:jakarta.ws.rs-api")
|
|
|
|
optional("javax.cache:cache-api")
|
|
|
|
optional("javax.money:money-api")
|
|
|
|
optional("net.sf.ehcache:ehcache")
|
|
|
|
optional("org.apache.activemq:activemq-broker") {
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-j2ee-management_1.1_spec"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-jms_1.1_spec"
|
|
|
|
}
|
|
|
|
optional("org.apache.activemq:artemis-jms-client") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-jms_2.0_spec"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-json_1.0_spec"
|
|
|
|
}
|
|
|
|
optional("org.apache.activemq:artemis-jms-server") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-jms_2.0_spec"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-json_1.0_spec"
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-jta_1.1_spec"
|
|
|
|
}
|
|
|
|
optional("org.apache.commons:commons-dbcp2") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
}
|
|
|
|
optional("org.apache.httpcomponents.client5:httpclient5")
|
|
|
|
optional("org.apache.kafka:kafka-streams")
|
|
|
|
optional("org.apache.solr:solr-solrj") {
|
|
|
|
exclude group: "org.slf4j", module: "jcl-over-slf4j"
|
|
|
|
}
|
|
|
|
optional("org.apache.tomcat.embed:tomcat-embed-core")
|
|
|
|
optional("org.apache.tomcat.embed:tomcat-embed-el")
|
|
|
|
optional("org.apache.tomcat.embed:tomcat-embed-websocket")
|
|
|
|
optional("org.apache.tomcat:tomcat-jdbc")
|
|
|
|
optional("org.apiguardian:apiguardian-api")
|
|
|
|
optional("org.codehaus.groovy:groovy-templates")
|
|
|
|
optional("com.github.ben-manes.caffeine:caffeine")
|
|
|
|
optional("com.github.mxab.thymeleaf.extras:thymeleaf-extras-data-attribute")
|
|
|
|
optional("com.sendgrid:sendgrid-java") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
}
|
|
|
|
optional("com.unboundid:unboundid-ldapsdk")
|
|
|
|
optional("com.zaxxer:HikariCP")
|
|
|
|
optional("nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect")
|
|
|
|
optional("org.aspectj:aspectjweaver")
|
|
|
|
optional("org.cache2k:cache2k-spring")
|
|
|
|
optional("org.eclipse.jetty:jetty-webapp") {
|
|
|
|
exclude group: "javax.servlet", module: "javax.servlet-api"
|
|
|
|
}
|
|
|
|
optional("org.eclipse.jetty:jetty-reactive-httpclient")
|
|
|
|
optional("org.eclipse.jetty.websocket:javax-websocket-server-impl") {
|
|
|
|
exclude group: "javax.annotation", module: "javax.annotation-api"
|
|
|
|
exclude group: "javax.servlet", module: "javax.servlet-api"
|
|
|
|
exclude group: "javax.websocket", module: "javax.websocket-api"
|
|
|
|
exclude group: "javax.websocket", module: "javax.websocket-client-api"
|
|
|
|
exclude group: "org.eclipse.jetty", module: "jetty-jndi"
|
|
|
|
}
|
|
|
|
optional("org.ehcache:ehcache")
|
|
|
|
optional("org.elasticsearch.client:elasticsearch-rest-client") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
}
|
|
|
|
optional("org.elasticsearch.client:elasticsearch-rest-client-sniffer") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
}
|
|
|
|
optional("org.elasticsearch.client:elasticsearch-rest-high-level-client") {
|
|
|
|
exclude group: "commons-logging", module: "commons-logging"
|
|
|
|
}
|
|
|
|
optional("org.flywaydb:flyway-core")
|
|
|
|
optional("org.flywaydb:flyway-sqlserver")
|
|
|
|
optional("org.freemarker:freemarker")
|
|
|
|
optional("org.glassfish.jersey.core:jersey-server")
|
|
|
|
optional("org.glassfish.jersey.containers:jersey-container-servlet-core")
|
|
|
|
optional("org.glassfish.jersey.containers:jersey-container-servlet")
|
|
|
|
optional("org.glassfish.jersey.ext:jersey-spring5")
|
|
|
|
optional("org.glassfish.jersey.media:jersey-media-json-jackson")
|
|
|
|
optional("org.hibernate:hibernate-core") {
|
|
|
|
exclude group: "javax.activation", module: "javax.activation-api"
|
|
|
|
exclude group: "javax.persistence", module: "javax.persistence-api"
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
exclude group: "org.jboss.spec.javax.transaction", module: "jboss-transaction-api_1.2_spec"
|
|
|
|
}
|
|
|
|
optional("org.hibernate:hibernate-jcache") {
|
|
|
|
exclude group: "javax.activation", module: "javax.activation-api"
|
|
|
|
exclude group: "javax.persistence", module: "javax.persistence-api"
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
exclude group: "org.jboss.spec.javax.transaction", module: "jboss-transaction-api_1.2_spec"
|
|
|
|
}
|
|
|
|
optional("org.hibernate.validator:hibernate-validator")
|
|
|
|
optional("org.infinispan:infinispan-component-annotations")
|
|
|
|
optional("org.infinispan:infinispan-jcache") {
|
|
|
|
exclude group: "org.jboss.spec.javax.transaction", module: "jboss-transaction-api_1.2_spec"
|
|
|
|
}
|
|
|
|
optional("org.infinispan:infinispan-spring5-embedded") {
|
|
|
|
exclude group: "org.jboss.spec.javax.transaction", module: "jboss-transaction-api_1.2_spec"
|
|
|
|
}
|
|
|
|
optional("org.influxdb:influxdb-java")
|
|
|
|
optional("org.jooq:jooq") {
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
}
|
|
|
|
optional("org.liquibase:liquibase-core") {
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
}
|
|
|
|
optional("org.messaginghub:pooled-jms") {
|
|
|
|
exclude group: "org.apache.geronimo.specs", module: "geronimo-jms_2.0_spec"
|
|
|
|
}
|
|
|
|
optional("org.mongodb:mongodb-driver-reactivestreams")
|
|
|
|
optional("org.mongodb:mongodb-driver-sync")
|
|
|
|
optional("org.quartz-scheduler:quartz")
|
|
|
|
optional("org.springframework:spring-jdbc")
|
|
|
|
optional("org.springframework.integration:spring-integration-core")
|
|
|
|
optional("org.springframework.integration:spring-integration-jdbc")
|
|
|
|
optional("org.springframework.integration:spring-integration-jmx")
|
|
|
|
optional("org.springframework.integration:spring-integration-rsocket")
|
|
|
|
optional("org.springframework:spring-jms")
|
|
|
|
optional("org.springframework:spring-orm")
|
|
|
|
optional("org.springframework:spring-tx")
|
|
|
|
optional("org.springframework:spring-web")
|
|
|
|
optional("org.springframework:spring-websocket")
|
|
|
|
optional("org.springframework:spring-webflux")
|
|
|
|
optional("org.springframework:spring-webmvc")
|
|
|
|
optional("org.springframework.batch:spring-batch-core")
|
|
|
|
optional("org.springframework.data:spring-data-couchbase") {
|
|
|
|
exclude group: "com.querydsl", module: "querydsl-apt"
|
|
|
|
exclude group: "javax.annotation", module: "javax.annotation-api"
|
|
|
|
}
|
|
|
|
optional("org.springframework.data:spring-data-envers") {
|
|
|
|
exclude group: "javax.activation", module: "javax.activation-api"
|
|
|
|
exclude group: "javax.persistence", module: "javax.persistence-api"
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
exclude group: "org.jboss.spec.javax.transaction", module: "jboss-transaction-api_1.2_spec"
|
|
|
|
}
|
|
|
|
optional("org.springframework.data:spring-data-jpa")
|
|
|
|
optional("org.springframework.data:spring-data-rest-webmvc")
|
|
|
|
optional("org.springframework.data:spring-data-cassandra") {
|
|
|
|
exclude group: "org.slf4j", module: "jcl-over-slf4j"
|
|
|
|
}
|
|
|
|
optional("org.springframework.data:spring-data-elasticsearch") {
|
|
|
|
exclude group: "org.elasticsearch.client", module: "transport"
|
|
|
|
}
|
|
|
|
optional("org.springframework.data:spring-data-jdbc")
|
|
|
|
optional("org.springframework.data:spring-data-ldap")
|
|
|
|
optional("org.springframework.data:spring-data-mongodb")
|
|
|
|
optional("org.springframework.data:spring-data-neo4j")
|
|
|
|
optional("org.springframework.data:spring-data-r2dbc")
|
|
|
|
optional("org.springframework.data:spring-data-redis")
|
|
|
|
optional("org.springframework.graphql:spring-graphql")
|
|
|
|
optional("org.springframework.hateoas:spring-hateoas")
|
|
|
|
optional("org.springframework.security:spring-security-acl")
|
|
|
|
optional("org.springframework.security:spring-security-config")
|
|
|
|
optional("org.springframework.security:spring-security-data") {
|
|
|
|
exclude group: "javax.xml.bind", module: "jaxb-api"
|
|
|
|
}
|
|
|
|
optional("org.springframework.security:spring-security-messaging")
|
|
|
|
optional("org.springframework.security:spring-security-oauth2-client")
|
|
|
|
optional("org.springframework.security:spring-security-oauth2-jose")
|
|
|
|
optional("org.springframework.security:spring-security-oauth2-resource-server")
|
|
|
|
optional("org.springframework.security:spring-security-rsocket")
|
|
|
|
optional("org.springframework.security:spring-security-saml2-service-provider")
|
|
|
|
optional("org.springframework.security:spring-security-web")
|
|
|
|
optional("org.springframework.session:spring-session-core")
|
|
|
|
optional("org.springframework.session:spring-session-data-mongodb")
|
|
|
|
optional("org.springframework.session:spring-session-data-redis")
|
|
|
|
optional("org.springframework.session:spring-session-hazelcast") {
|
|
|
|
exclude group: "javax.annotation", module: "javax.annotation-api"
|
|
|
|
}
|
|
|
|
optional("org.springframework.session:spring-session-jdbc")
|
|
|
|
optional("org.springframework.amqp:spring-rabbit")
|
|
|
|
optional("org.springframework.amqp:spring-rabbit-stream")
|
|
|
|
optional("org.springframework.kafka:spring-kafka")
|
|
|
|
optional("org.springframework.ws:spring-ws-core")
|
|
|
|
optional("org.thymeleaf:thymeleaf")
|
|
|
|
optional("org.thymeleaf:thymeleaf-spring5")
|
|
|
|
optional("org.thymeleaf.extras:thymeleaf-extras-java8time")
|
|
|
|
optional("org.thymeleaf.extras:thymeleaf-extras-springsecurity5")
|
|
|
|
optional("redis.clients:jedis")
|
|
|
|
|
|
|
|
testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support"))
|
|
|
|
testImplementation(project(":spring-boot-project:spring-boot-test"))
|
|
|
|
testImplementation("ch.qos.logback:logback-classic")
|
|
|
|
testImplementation("commons-fileupload:commons-fileupload")
|
|
|
|
testImplementation("com.atomikos:transactions-jms")
|
|
|
|
testImplementation("com.github.h-thurow:simple-jndi")
|
|
|
|
testImplementation("com.ibm.db2:jcc")
|
|
|
|
testImplementation("com.jayway.jsonpath:json-path")
|
|
|
|
testImplementation("com.mysql:mysql-connector-j")
|
|
|
|
testImplementation("com.querydsl:querydsl-core")
|
|
|
|
testImplementation("com.squareup.okhttp3:mockwebserver")
|
|
|
|
testImplementation("com.sun.xml.messaging.saaj:saaj-impl")
|
|
|
|
testImplementation("io.projectreactor:reactor-test")
|
|
|
|
testImplementation("io.r2dbc:r2dbc-h2")
|
|
|
|
testImplementation("jakarta.json:jakarta.json-api")
|
|
|
|
testImplementation("jakarta.xml.ws:jakarta.xml.ws-api")
|
|
|
|
testImplementation("org.apache.johnzon:johnzon-jsonb")
|
|
|
|
testImplementation("org.apache.logging.log4j:log4j-to-slf4j")
|
|
|
|
testImplementation("org.apache.tomcat.embed:tomcat-embed-jasper")
|
|
|
|
testImplementation("org.assertj:assertj-core")
|
|
|
|
testImplementation("org.awaitility:awaitility")
|
|
|
|
testImplementation("org.hsqldb:hsqldb")
|
|
|
|
testImplementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
|
|
|
|
testImplementation("org.junit.jupiter:junit-jupiter")
|
|
|
|
testImplementation("org.mockito:mockito-core")
|
|
|
|
testImplementation("org.mockito:mockito-junit-jupiter")
|
|
|
|
testImplementation("org.skyscreamer:jsonassert")
|
|
|
|
testImplementation("org.springframework:spring-test")
|
|
|
|
testImplementation("org.springframework.graphql:spring-graphql-test")
|
|
|
|
testImplementation("org.springframework.kafka:spring-kafka-test")
|
|
|
|
testImplementation("org.springframework.security:spring-security-test")
|
|
|
|
testImplementation("org.testcontainers:cassandra")
|
|
|
|
testImplementation("org.testcontainers:couchbase")
|
|
|
|
testImplementation("org.testcontainers:elasticsearch")
|
|
|
|
testImplementation("org.testcontainers:junit-jupiter")
|
|
|
|
testImplementation("org.testcontainers:mongodb")
|
|
|
|
testImplementation("org.testcontainers:neo4j")
|
|
|
|
testImplementation("org.testcontainers:testcontainers")
|
|
|
|
testImplementation("org.yaml:snakeyaml")
|
|
|
|
|
|
|
|
testRuntimeOnly("jakarta.management.j2ee:jakarta.management.j2ee-api")
|
|
|
|
testRuntimeOnly("org.jetbrains.kotlin:kotlin-reflect")
|
|
|
|
}
|
|
|
|
|
|
|
|
tasks.named("checkSpringConfigurationMetadata").configure {
|
|
|
|
exclusions = [
|
|
|
|
"spring.datasource.dbcp2.*",
|
|
|
|
"spring.datasource.hikari.*",
|
|
|
|
"spring.datasource.oracleucp.*",
|
|
|
|
"spring.datasource.tomcat.*",
|
|
|
|
"spring.groovy.template.configuration.*"
|
|
|
|
]
|
|
|
|
}
|