plugins { id "org.springframework.boot.bom" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" } description = "Spring Boot Dependencies" bom { effectiveBomArtifact() upgrade { policy = "same-minor-version" gitHub { issueLabels = ["type: dependency-upgrade"] } } library("ActiveMQ", "6.1.2") { group("org.apache.activemq") { modules = [ "activemq-amqp", "activemq-blueprint", "activemq-broker", "activemq-client", "activemq-console" { exclude group: "commons-logging", module: "commons-logging" }, "activemq-http", "activemq-jaas", "activemq-jdbc-store", "activemq-jms-pool", "activemq-kahadb-store", "activemq-karaf", "activemq-log4j-appender", "activemq-mqtt", "activemq-openwire-generator", "activemq-openwire-legacy", "activemq-osgi", "activemq-pool", "activemq-ra", "activemq-run", "activemq-runtime-config", "activemq-shiro", "activemq-spring" { exclude group: "commons-logging", module: "commons-logging" }, "activemq-stomp", "activemq-web" ] } links { site("https://activemq.apache.org") docs("https://activemq.apache.org/components/classic/documentation") releaseNotes { version -> "https://activemq.apache.org/components/classic/download/classic-%02d-%02d-%02d" .formatted(version.componentInts()) } } } library("Angus Mail", "2.0.3") { group("org.eclipse.angus") { modules = [ "angus-core", "angus-mail", "dsn", "gimap", "imap", "jakarta.mail", "logging-mailhandler", "pop3", "smtp" ] } links { site("https://github.com/eclipse-ee4j/angus-mail") releaseNotes("https://github.com/eclipse-ee4j/angus-mail/releases/tag/{version}") } } library("Artemis", "2.33.0") { group("org.apache.activemq") { imports = [ "artemis-bom" ] } links { site("https://activemq.apache.org/components/artemis") releaseNotes("https://activemq.apache.org/components/artemis/download/release-notes-{version}") } } library("AspectJ", "1.9.22") { group("org.aspectj") { modules = [ "aspectjrt", "aspectjtools", "aspectjweaver" ] } links { site("https://eclipse.dev/aspectj") releaseNotes("https://github.com/eclipse-aspectj/aspectj/blob/master/docs/release/README-{version}.adoc") } } library("AssertJ", "${assertjVersion}") { group("org.assertj") { imports = [ "assertj-bom" ] } links { site("https://assertj.github.io/doc/") releaseNotes("https://github.com/assertj/assertj/releases/tag/assertj-build-{version}") } } library("Awaitility", "4.2.1") { group("org.awaitility") { modules = [ "awaitility", "awaitility-groovy", "awaitility-kotlin", "awaitility-scala" ] } links { releaseNotes { version -> "https://github.com/awaitility/awaitility/wiki/ReleaseNotes%s.%s" .formatted(version.major(), version.minor()) } } } library("Zipkin Reporter", "3.4.0") { group("io.zipkin.reporter2") { imports = [ "zipkin-reporter-bom" ] } links { site("https://github.com/openzipkin/zipkin-reporter-java") releaseNotes("https://github.com/openzipkin/zipkin-reporter-java/releases/tag/{version}") } } library("Brave", "6.0.3") { group("io.zipkin.brave") { imports = [ "brave-bom" ] } links { site("https://github.com/openzipkin/brave") releaseNotes("https://github.com/openzipkin/brave/releases/tag/{version}") } } library("Build Helper Maven Plugin", "3.5.0") { group("org.codehaus.mojo") { plugins = [ "build-helper-maven-plugin" ] } links { site("https://www.mojohaus.org/build-helper-maven-plugin") releaseNotes("https://github.com/mojohaus/build-helper-maven-plugin/releases/tag/{version}") } } library("Byte Buddy", "1.14.13") { group("net.bytebuddy") { modules = [ "byte-buddy", "byte-buddy-agent" ] } links { site("https://bytebuddy.net/") docs("https://bytebuddy.net/#/tutorial") releaseNotes("https://github.com/raphw/byte-buddy/releases/tag/byte-buddy-{version}") } } library("cache2k", "2.6.1.Final") { group("org.cache2k") { modules = [ "cache2k-api", "cache2k-config", "cache2k-core", "cache2k-jcache", "cache2k-micrometer", "cache2k-spring" ] } links { site("https://cache2k.org") releaseNotes("https://github.com/cache2k/cache2k/releases/tag/v{version}") } } library("Caffeine", "3.1.8") { group("com.github.ben-manes.caffeine") { modules = [ "caffeine", "guava", "jcache", "simulator" ] } links { site("https://github.com/ben-manes/caffeine") docs("https://github.com/ben-manes/caffeine/wiki") releaseNotes("https://github.com/ben-manes/caffeine/releases/tag/v{version}") } } library("Cassandra Driver", "4.18.0") { group("org.apache.cassandra") { imports = [ "java-driver-bom" ] modules = [ "java-driver-core" ] } links { site { version -> "https://docs.datastax.com/en/developer/java-driver/%s.%s/" .formatted(version.major(), version.minor()) } releaseNotes { version -> "https://docs.datastax.com/en/developer/java-driver/%s.%s/changelog/#%s" .formatted(version.major(), version.minor(), version.toString("-")) } } } library("Classmate", "1.7.0") { group("com.fasterxml") { modules = [ "classmate" ] } links { site("https://github.com/FasterXML/java-classmate") } } library("Commons Codec", "${commonsCodecVersion}") { group("commons-codec") { modules = [ "commons-codec" ] } links { site("https://commons.apache.org/proper/commons-codec") releaseNotes("https://commons.apache.org/proper/commons-codec/changes-report.html#a{version}") } } library("Commons DBCP2", "2.12.0") { group("org.apache.commons") { modules = [ "commons-dbcp2" { exclude group: "commons-logging", module: "commons-logging" } ] } links { site("https://commons.apache.org/proper/commons-dbcp") } } library("Commons Lang3", "3.14.0") { group("org.apache.commons") { modules = [ "commons-lang3" ] } links { site("https://commons.apache.org/proper/commons-lang") } } library("Commons Pool", "1.6") { group("commons-pool") { modules = [ "commons-pool" ] } } library("Commons Pool2", "2.12.0") { group("org.apache.commons") { modules = [ "commons-pool2" ] } links { site("https://commons.apache.org/proper/commons-pool") } } library("Couchbase Client", "3.6.1") { group("com.couchbase.client") { modules = [ "java-client" ] } links { site("https://docs.couchbase.com/java-sdk/current/hello-world/overview.html") } } library("Crac", "1.4.0") { group("org.crac") { modules = [ "crac" ] } } library("CycloneDX Maven Plugin", "2.8.0") { group("org.cyclonedx") { plugins = [ "cyclonedx-maven-plugin" ] } } library("DB2 JDBC", "11.5.9.0") { group("com.ibm.db2") { modules = [ "jcc" ] } } library("Dependency Management Plugin", "1.1.4") { group("io.spring.gradle") { modules = [ "dependency-management-plugin" ] } links { site("https://github.com/spring-gradle-plugins/dependency-management-plugin") docs("https://docs.spring.io/dependency-management-plugin/docs/{version}/reference/html/") releaseNotes("https://github.com/spring-gradle-plugins/dependency-management-plugin/releases/tag/v{version}") } } library("Derby", "10.16.1.1") { prohibit { versionRange "[10.17.1.0,)" because "it requires Java 21" } group("org.apache.derby") { modules = [ "derby", "derbyclient", "derbynet", "derbyoptionaltools", "derbyshared", "derbytools" ] } } library("Ehcache3", "3.10.8") { group("org.ehcache") { modules = [ "ehcache", "ehcache" { classifier = 'jakarta' }, "ehcache-clustered", "ehcache-transactions", "ehcache-transactions" { classifier = 'jakarta' } ] } links { site("https://www.ehcache.org/") releaseNotes("https://github.com/ehcache/ehcache3/releases/tag/v{version}") } } library("Elasticsearch Client", "8.13.2") { group("org.elasticsearch.client") { modules = [ "elasticsearch-rest-client" { exclude group: "commons-logging", module: "commons-logging" }, "elasticsearch-rest-client-sniffer" { exclude group: "commons-logging", module: "commons-logging" }, ] } group("co.elastic.clients") { modules = [ "elasticsearch-java" ] } links { releaseNotes("https://www.elastic.co/guide/en/elasticsearch/reference/current/release-notes-{version}.html") } } library("Flyway", "10.10.0") { group("org.flywaydb") { modules = [ "flyway-commandline", "flyway-core", "flyway-database-db2", "flyway-database-derby", "flyway-database-hsqldb", "flyway-database-informix", "flyway-database-mongodb", "flyway-database-oracle", "flyway-database-postgresql", "flyway-database-redshift", "flyway-database-saphana", "flyway-database-snowflake", "flyway-database-sybasease", "flyway-firebird", "flyway-gcp-bigquery", "flyway-gcp-spanner", "flyway-mysql", "flyway-singlestore", "flyway-sqlserver" ] plugins = [ "flyway-maven-plugin" ] } links { site("https://documentation.red-gate.com/flyway") } } library("FreeMarker", "2.3.32") { group("org.freemarker") { modules = [ "freemarker" ] } links { site("https://freemarker.apache.org") releaseNotes { version -> "https://freemarker.apache.org/docs/versions_%s.html" .formatted(version.toString("_")) } } } library("Git Commit ID Maven Plugin", "8.0.2") { group("io.github.git-commit-id") { plugins = [ "git-commit-id-maven-plugin" ] } links { site("https://github.com/git-commit-id/git-commit-id-maven-plugin") releaseNotes("https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v{version}") } } library("Glassfish JAXB", "4.0.5") { group("org.glassfish.jaxb") { imports = [ "jaxb-bom" ] } } library("Glassfish JSTL", "3.0.1") { group("org.glassfish.web") { modules = [ "jakarta.servlet.jsp.jstl" ] } } library("GraphQL Java", "22.0") { prohibit { startsWith(["2018-", "2019-", "2020-", "2021-", "230521-"]) because "These are snapshots that we don't want to see" } group("com.graphql-java") { modules = [ "graphql-java" ] } links { site("https://www.graphql-java.com/") releaseNotes("https://github.com/graphql-java/graphql-java/releases/tag/v{version}") } } library("Groovy", "4.0.21") { group("org.apache.groovy") { imports = [ "groovy-bom" ] } links { site("https://groovy-lang.org") } } library("Gson", "2.10.1") { group("com.google.code.gson") { modules = [ "gson" ] } links { site("https://github.com/google/gson") releaseNotes("https://github.com/google/gson/releases/tag/gson-parent-{version}") } } library("H2", "2.2.224") { group("com.h2database") { modules = [ "h2" ] } links { site("https://www.h2database.com") releaseNotes("https://github.com/h2database/h2database/releases/tag/version-{version}") } } library("Hamcrest", "${hamcrestVersion}") { group("org.hamcrest") { modules = [ "hamcrest", "hamcrest-core", "hamcrest-library" ] } } library("Hazelcast", "5.4.0") { group("com.hazelcast") { modules = [ "hazelcast", "hazelcast-spring" ] } links { site("https://hazelcast.com") releaseNotes("https://github.com/hazelcast/hazelcast/releases/tag/v{version}") } } library("Hibernate", "6.5.0.CR2") { group("org.hibernate.orm") { modules = [ "hibernate-agroal", "hibernate-ant", "hibernate-c3p0", "hibernate-community-dialects", "hibernate-core", "hibernate-envers", "hibernate-graalvm", "hibernate-hikaricp", "hibernate-jcache", "hibernate-jpamodelgen", "hibernate-micrometer", "hibernate-proxool", "hibernate-spatial", "hibernate-testing", "hibernate-vibur" ] } links { site("https://hibernate.org/orm") javadoc { version -> "https://docs.jboss.org/hibernate/orm/%s.%s/javadocs" .formatted(version.major(), version.minor()) } docs { version -> "https://hibernate.org/orm/documentation/%s.%s" .formatted(version.major(), version.minor()) } releaseNotes { version -> "https://github.com/hibernate/hibernate-orm/releases/tag/%s" .formatted(version.toString().replace(".Final", "")) } add("userguide") { version -> "https://docs.jboss.org/hibernate/orm/%s.%s/userguide/html_single/Hibernate_User_Guide.html" .formatted(version.major(), version.minor()) } } } library("Hibernate Validator", "8.0.1.Final") { group("org.hibernate.validator") { modules = [ "hibernate-validator", "hibernate-validator-annotation-processor" ] } } library("HikariCP", "5.1.0") { group("com.zaxxer") { modules = [ "HikariCP" ] } } library("HSQLDB", "2.7.2") { group("org.hsqldb") { modules = [ "hsqldb" ] } } library("HtmlUnit", "2.70.0") { group("net.sourceforge.htmlunit") { modules = [ "htmlunit" { exclude group: "commons-logging", module: "commons-logging" } ] } links { site("https://www.htmlunit.org") releaseNotes("https://github.com/HtmlUnit/htmlunit/releases/tag/{version}") } } library("HttpAsyncClient", "4.1.5") { group("org.apache.httpcomponents") { modules = [ "httpasyncclient" { exclude group: "commons-logging", module: "commons-logging" } ] } } library("HttpClient5", "5.3.1") { group("org.apache.httpcomponents.client5") { modules = [ "httpclient5", "httpclient5-cache", "httpclient5-fluent" ] } } library("HttpCore", "4.4.16") { group("org.apache.httpcomponents") { modules = [ "httpcore", "httpcore-nio" ] } } library("HttpCore5", "5.2.4") { group("org.apache.httpcomponents.core5") { modules = [ "httpcore5", "httpcore5-h2", "httpcore5-reactive" ] } } library("Infinispan", "15.0.1.Final") { group("org.infinispan") { imports = [ "infinispan-bom" ] } links { site("https://infinispan.org/") releaseNotes("https://github.com/infinispan/infinispan/releases/tag/{version}") } } library("InfluxDB Java", "2.24") { group("org.influxdb") { modules = [ "influxdb-java" ] } links { site("https://github.com/influxdata/influxdb-java") releaseNotes("https://github.com/influxdata/influxdb-java/releases/tag/influxdb-java-{version}") } } library("Jackson Bom", "${jacksonVersion}") { group("com.fasterxml.jackson") { imports = [ "jackson-bom" ] } } library("Jakarta Activation", "2.1.3") { group("jakarta.activation") { modules = [ "jakarta.activation-api" ] } links { site("https://github.com/jakartaee/jaf-api") releaseNotes("https://github.com/jakartaee/jaf-api/releases/tag/{version}") } } library("Jakarta Annotation", "2.1.1") { group("jakarta.annotation") { modules = [ "jakarta.annotation-api" ] } } library("Jakarta Inject", "2.0.1") { group("jakarta.inject") { modules = [ "jakarta.inject-api" ] } } library("Jakarta JMS", "3.1.0") { group("jakarta.jms") { modules = [ "jakarta.jms-api" ] } } library("Jakarta Json", "2.1.3") { group("jakarta.json") { modules = [ "jakarta.json-api" ] } } library("Jakarta Json Bind", "3.0.1") { group("jakarta.json.bind") { modules = [ "jakarta.json.bind-api" ] } } library("Jakarta Mail", "2.1.3") { group("jakarta.mail") { modules = [ "jakarta.mail-api" ] } links { site("https://github.com/jakartaee/mail-api") releaseNotes("https://github.com/jakartaee/mail-api/releases/tag/{version}") } } library("Jakarta Management", "1.1.4") { group("jakarta.management.j2ee") { modules = [ "jakarta.management.j2ee-api" ] } } library("Jakarta Persistence", "3.1.0") { group("jakarta.persistence") { modules = [ "jakarta.persistence-api" ] } } library("Jakarta Servlet", "6.0.0") { group("jakarta.servlet") { modules = [ "jakarta.servlet-api" ] } } library("Jakarta Servlet JSP JSTL", "3.0.0") { group("jakarta.servlet.jsp.jstl") { modules = [ "jakarta.servlet.jsp.jstl-api" ] } } library("Jakarta Transaction", "2.0.1") { group("jakarta.transaction") { modules = [ "jakarta.transaction-api" ] } } library("Jakarta Validation", "3.0.2") { group("jakarta.validation") { modules = [ "jakarta.validation-api" ] } } library("Jakarta WebSocket", "2.1.1") { group("jakarta.websocket") { modules = [ "jakarta.websocket-api", "jakarta.websocket-client-api" ] } } library("Jakarta WS RS", "3.1.0") { group("jakarta.ws.rs") { modules = [ "jakarta.ws.rs-api" ] } } library("Jakarta XML Bind", "4.0.2") { group("jakarta.xml.bind") { modules = [ "jakarta.xml.bind-api" ] } } library("Jakarta XML SOAP", "3.0.1") { group("jakarta.xml.soap") { modules = [ "jakarta.xml.soap-api" ] } } library("Jakarta XML WS", "4.0.1") { group("jakarta.xml.ws") { modules = [ "jakarta.xml.ws-api" ] } } library("Janino", "3.1.12") { group("org.codehaus.janino") { modules = [ "commons-compiler", "commons-compiler-jdk", "janino" ] } } library("Javax Cache", "1.1.1") { group("javax.cache") { modules = [ "cache-api" ] } } library("Javax Money", "1.1") { group("javax.money") { modules = [ "money-api" ] } } library("Jaxen", "2.0.0") { group("jaxen") { modules = [ "jaxen" ] } } library("Jaybird", "5.0.4.java11") { group("org.firebirdsql.jdbc") { modules = [ "jaybird" ] } } library("JBoss Logging", "3.5.3.Final") { group("org.jboss.logging") { modules = [ "jboss-logging" ] } } library("JDOM2", "2.0.6.1") { group("org.jdom") { modules = [ "jdom2" ] } } library("Jedis", "5.0.2") { group("redis.clients") { modules = [ "jedis" ] } links { site("https://github.com/redis/jedis") releaseNotes("https://github.com/redis/jedis/releases/tag/v{version}") } } library("Jersey", "3.1.6") { group("org.glassfish.jersey") { imports = [ "jersey-bom" ] } links { site("https://github.com/eclipse-ee4j/jersey") releaseNotes("https://github.com/eclipse-ee4j/jersey/releases/tag/{version}") } } library("Jetty Reactive HTTPClient", "4.0.3") { group("org.eclipse.jetty") { modules = [ "jetty-reactive-httpclient" ] } } library("Jetty", "12.0.8") { group("org.eclipse.jetty.ee10") { imports = [ "jetty-ee10-bom" ] } group("org.eclipse.jetty") { imports = [ "jetty-bom" ] } links { site("https://eclipse.dev/jetty") releaseNotes("https://github.com/jetty/jetty.project/releases/tag/jetty-{version}") } } library("JMustache", "1.16") { group("com.samskivert") { modules = [ "jmustache" ] } } library("jOOQ", "3.19.7") { group("org.jooq") { modules = [ "jooq", "jooq-codegen", "jooq-kotlin", "jooq-meta" ] plugins = [ "jooq-codegen-maven" ] } links { site("https://www.jooq.org") docs("https://www.jooq.org/doc/{version}/manual-single-page") releaseNotes("https://github.com/jOOQ/jOOQ/releases/tag/version-{version}") } } library("Json Path", "2.9.0") { group("com.jayway.jsonpath") { modules = [ "json-path", "json-path-assert" ] } links { site("https://github.com/json-path/JsonPath") releaseNotes("https://github.com/json-path/JsonPath/releases/tag/json-path-{version}") } } library("Json-smart", "2.5.1") { group("net.minidev") { modules = [ "json-smart" ] } links { site("https://github.com/netplex/json-smart-v2") releaseNotes("https://github.com/netplex/json-smart-v2/releases/tag/{version}") } } library("JsonAssert", "1.5.1") { group("org.skyscreamer") { modules = [ "jsonassert" ] } links { site("https://github.com/skyscreamer/JSONassert") releaseNotes("https://github.com/skyscreamer/JSONassert/releases/tag/jsonassert-{version}") } } library("JTDS", "1.3.1") { group("net.sourceforge.jtds") { modules = [ "jtds" ] } } library("JUnit", "4.13.2") { group("junit") { modules = [ "junit" ] } } library("JUnit Jupiter", "${junitJupiterVersion}") { group("org.junit") { imports = [ "junit-bom" ] } links { site("https://junit.org/junit5") javadoc("https://junit.org/junit5/docs/{version}/api") docs("https://junit.org/junit5/docs/{version}/user-guide") releaseNotes("https://junit.org/junit5/docs/{version}/release-notes") } } library("Kafka", "3.7.0") { group("org.apache.kafka") { modules = [ "connect", "connect-api", "connect-basic-auth-extension", "connect-file", "connect-json", "connect-mirror", "connect-mirror-client", "connect-runtime", "connect-transforms", "generator", "kafka-clients", "kafka-clients" { classifier = "test" }, "kafka-log4j-appender", "kafka-metadata", "kafka-raft", "kafka-server-common", "kafka-server-common" { classifier = "test" }, "kafka-shell", "kafka-storage", "kafka-storage-api", "kafka-streams", "kafka-streams-scala_2.12", "kafka-streams-scala_2.13", "kafka-streams-test-utils", "kafka-tools", "kafka_2.12", "kafka_2.12" { classifier = "test" }, "kafka_2.13", "kafka_2.13" { classifier = "test" }, "trogdor" ] } links { site("https://kafka.apache.org") releaseNotes("https://downloads.apache.org/kafka/{version}/RELEASE_NOTES.html") } } library("Kotlin", "${kotlinVersion}") { group("org.jetbrains.kotlin") { imports = [ "kotlin-bom" ] plugins = [ "kotlin-maven-plugin" ] } links { site("https://kotlinlang.org/") docs("https://kotlinlang.org/docs/reference") releaseNotes("https://github.com/JetBrains/kotlin/releases/tag/v{version}") } } library("Kotlin Coroutines", "1.8.0") { group("org.jetbrains.kotlinx") { imports = [ "kotlinx-coroutines-bom" ] } links { site("https://github.com/Kotlin/kotlinx.coroutines") releaseNotes("https://github.com/Kotlin/kotlinx.coroutines/releases/tag/{version}") } } library("Kotlin Serialization", "1.6.3") { group("org.jetbrains.kotlinx") { imports = [ "kotlinx-serialization-bom" ] } links { site("https://github.com/Kotlin/kotlinx.serialization") releaseNotes("https://github.com/Kotlin/kotlinx.serialization/releases/tag/v{version}") } } library("Lettuce", "6.3.2.RELEASE") { group("io.lettuce") { modules = [ "lettuce-core" ] } links { site("https://github.com/lettuce-io/lettuce-core") docs("https://lettuce.io/core/{version}/reference/index.html") releaseNotes("https://github.com/lettuce-io/lettuce-core/releases/tag/{version}") } } library("Liquibase", "4.27.0") { group("org.liquibase") { modules = [ "liquibase-cdi", "liquibase-core" ] plugins = [ "liquibase-maven-plugin" ] } links { site("https://www.liquibase.com") releaseNotes("https://github.com/liquibase/liquibase/releases/tag/v{version}") } } library("Log4j2", "2.23.1") { group("org.apache.logging.log4j") { imports = [ "log4j-bom" ] } links { site("https://logging.apache.org/log4j") releaseNotes("https://github.com/apache/logging-log4j2/releases/tag/rel%2F{version}") } } library("Logback", "1.5.6") { group("ch.qos.logback") { modules = [ "logback-classic", "logback-core" ] } links { site("https://logback.qos.ch") } } library("Lombok", "1.18.32") { group("org.projectlombok") { modules = [ "lombok" ] } links { site("https://projectlombok.org") } } library("MariaDB", "3.3.3") { group("org.mariadb.jdbc") { modules = [ "mariadb-java-client" ] } links { site("https://mariadb.com/kb/en/mariadb-connector-j/") releaseNotes { version -> "https://mariadb.com/kb/en/mariadb-connector-j-%s-release-notes/" .formatted(version.toString("-")) } } } library("Maven AntRun Plugin", "3.1.0") { group("org.apache.maven.plugins") { plugins = [ "maven-antrun-plugin" ] } } library("Maven Assembly Plugin", "3.7.1") { group("org.apache.maven.plugins") { plugins = [ "maven-assembly-plugin" ] } } library("Maven Clean Plugin", "3.3.2") { group("org.apache.maven.plugins") { plugins = [ "maven-clean-plugin" ] } } library("Maven Compiler Plugin", "3.13.0") { group("org.apache.maven.plugins") { plugins = [ "maven-compiler-plugin" ] } } library("Maven Dependency Plugin", "3.6.1") { group("org.apache.maven.plugins") { plugins = [ "maven-dependency-plugin" ] } } library("Maven Deploy Plugin", "3.1.1") { group("org.apache.maven.plugins") { plugins = [ "maven-deploy-plugin" ] } } library("Maven Enforcer Plugin", "3.4.1") { group("org.apache.maven.plugins") { plugins = [ "maven-enforcer-plugin" ] } } library("Maven Failsafe Plugin", "3.2.5") { group("org.apache.maven.plugins") { plugins = [ "maven-failsafe-plugin" ] } } library("Maven Help Plugin", "3.4.0") { group("org.apache.maven.plugins") { plugins = [ "maven-help-plugin" ] } } library("Maven Install Plugin", "3.1.1") { group("org.apache.maven.plugins") { plugins = [ "maven-install-plugin" ] } } library("Maven Invoker Plugin", "3.6.1") { group("org.apache.maven.plugins") { plugins = [ "maven-invoker-plugin" ] } } library("Maven Jar Plugin", "3.4.0") { group("org.apache.maven.plugins") { plugins = [ "maven-jar-plugin" ] } } library("Maven Javadoc Plugin", "3.6.3") { group("org.apache.maven.plugins") { plugins = [ "maven-javadoc-plugin" ] } } library("Maven Resources Plugin", "3.3.1") { group("org.apache.maven.plugins") { plugins = [ "maven-resources-plugin" ] } } library("Maven Shade Plugin", "3.5.2") { group("org.apache.maven.plugins") { plugins = [ "maven-shade-plugin" ] } } library("Maven Source Plugin", "3.3.1") { group("org.apache.maven.plugins") { plugins = [ "maven-source-plugin" ] } } library("Maven Surefire Plugin", "3.2.5") { group("org.apache.maven.plugins") { plugins = [ "maven-surefire-plugin" ] } } library("Maven War Plugin", "3.4.0") { group("org.apache.maven.plugins") { plugins = [ "maven-war-plugin" ] } } library("Micrometer", "1.13.0-RC1") { considerSnapshots() group("io.micrometer") { modules = [ "micrometer-registry-stackdriver" { exclude group: "javax.annotation", module: "javax.annotation-api" } ] imports = [ "micrometer-bom" ] } links { site("https://micrometer.io") docs { version -> "https://docs.micrometer.io/micrometer/reference/%s.%s" .formatted(version.major(), version.minor()) } releaseNotes("https://github.com/micrometer-metrics/micrometer/releases/tag/v{version}") } } library("Micrometer Tracing", "1.3.0-RC1") { considerSnapshots() calendarName = "Tracing" group("io.micrometer") { imports = [ "micrometer-tracing-bom" ] } links { site("https://micrometer.io") docs { version -> "https://docs.micrometer.io/tracing/reference/%s.%s" .formatted(version.major(), version.minor()) } releaseNotes("https://github.com/micrometer-metrics/tracing/releases/tag/v{version}") } } library("Mockito", "5.11.0") { group("org.mockito") { imports = [ "mockito-bom" ] } links { site("https://site.mockito.org/") releaseNotes("https://github.com/mockito/mockito/releases/tag/v{version}") } } library("MongoDB", "5.0.1") { group("org.mongodb") { modules = [ "bson", "bson-record-codec", "mongodb-driver-core", "mongodb-driver-legacy", "mongodb-driver-reactivestreams", "mongodb-driver-sync" ] } links { site("https://github.com/mongodb/mongo-java-driver") releaseNotes("https://github.com/mongodb/mongo-java-driver/releases/tag/r{version}") } } library("MSSQL JDBC", "12.6.1.jre11") { prohibit { endsWith(".jre8") because "we want to use the jre11 version" } prohibit { endsWith("-preview") because "we only want to use non-preview releases" } prohibit { versionRange "[12.7.0,12.7.0]" because "it's actually a preview release" } group("com.microsoft.sqlserver") { modules = [ "mssql-jdbc" ] } links { site("https://github.com/microsoft/mssql-jdbc") releaseNotes { version -> "https://github.com/microsoft/mssql-jdbc/releases/tag/v%s" .formatted(version.toString().replace(".jre11", "")) } } } library("MySQL", "8.3.0") { group("com.mysql") { modules = [ "mysql-connector-j" { exclude group: "com.google.protobuf", module: "protobuf-java" } ] } } library("Native Build Tools Plugin", "${nativeBuildToolsVersion}") { group("org.graalvm.buildtools") { plugins = [ "native-maven-plugin" ] } links { site("https://github.com/graalvm/native-build-tools") releaseNotes("https://github.com/graalvm/native-build-tools/releases/tag/{version}") } } library("NekoHTML", "1.9.22") { group("net.sourceforge.nekohtml") { modules = [ "nekohtml" ] } } library("Neo4j Java Driver", "5.19.0") { alignWith { version { from "org.springframework.data:spring-data-neo4j" managedBy "Spring Data Bom" } } group("org.neo4j.driver") { modules = [ "neo4j-java-driver" ] } links { site("https://github.com/neo4j/neo4j-java-driver") releaseNotes("https://github.com/neo4j/neo4j-java-driver/releases/tag/{version}") } } library("Netty", "4.1.109.Final") { group("io.netty") { imports = [ "netty-bom" ] } links { site("https://netty.io") } } library("OkHttp", "4.12.0") { group("com.squareup.okhttp3") { imports = [ "okhttp-bom" ] } } library("OpenTelemetry", "1.37.0") { group("io.opentelemetry") { imports = [ "opentelemetry-bom" ] } links { site("https://github.com/open-telemetry/opentelemetry-java") releaseNotes("https://github.com/open-telemetry/opentelemetry-java/releases/tag/v{version}") } } library("Oracle Database", "21.9.0.0") { prohibit { versionRange "[21.10.0.0,21.13.0.0]" because "they do not work in a JVM with assertions enabled" } alignWith { dependencyManagementDeclaredIn("com.oracle.database.jdbc:ojdbc-bom") } group("com.oracle.database.ha") { modules = [ "ons", "simplefan" ] } group("com.oracle.database.jdbc.debug") { modules = [ "ojdbc11-debug", "ojdbc11-observability-debug", "ojdbc11_g", "ojdbc11dms_g", "ojdbc8-debug", "ojdbc8-observability-debug", "ojdbc8_g", "ojdbc8dms_g" ] } group("com.oracle.database.jdbc") { modules = [ "ojdbc11", "ojdbc11-production", "ojdbc8", "ojdbc8-production", "rsi", "ucp", "ucp11" ] } group("com.oracle.database.nls") { modules = [ "orai18n" ] } group("com.oracle.database.observability") { modules = [ "dms", "ojdbc11-observability", "ojdbc11dms", "ojdbc8-observability", "ojdbc8dms" ] } group("com.oracle.database.security") { modules = [ "oraclepki", "osdt_cert", "osdt_core" ] } group("com.oracle.database.xml") { modules = [ "xdb", "xmlparserv2" ] } } library("Oracle R2DBC", "1.2.0") { group("com.oracle.database.r2dbc") { modules = [ "oracle-r2dbc" ] } } library("Pooled JMS", "3.1.5") { group("org.messaginghub") { modules = [ "pooled-jms" ] } } library("Postgresql", "42.7.3") { group("org.postgresql") { modules = [ "postgresql" ] } links { site("https://github.com/pgjdbc/pgjdbc") releaseNotes("https://github.com/pgjdbc/pgjdbc/releases/tag/REL{version}") } } library("Prometheus Client", "1.2.1") { group("io.prometheus") { imports = [ "prometheus-metrics-bom" ] } links { site("https://github.com/prometheus/client_java") releaseNotes("https://github.com/prometheus/client_java/releases/tag/parent-{version}") } } library("Prometheus Simpleclient", "0.16.0") { group("io.prometheus") { imports = [ "simpleclient_bom" ] } links { site("https://github.com/prometheus/client_java") releaseNotes("https://github.com/prometheus/client_java/releases/tag/parent-{version}") } } library("Pulsar", "3.2.2") { group("org.apache.pulsar") { imports = [ "pulsar-bom" ] } links { site("https://pulsar.apache.org") docs { version -> "https://pulsar.apache.org/docs/%s.%s.x" .formatted(version.major(), version.minor()) } releaseNotes("https://pulsar.apache.org/release-notes/versioned/pulsar-{version}") } } library("Pulsar Reactive", "0.5.4") { group("org.apache.pulsar") { modules = [ "pulsar-client-reactive-adapter", "pulsar-client-reactive-api", "pulsar-client-reactive-jackson", "pulsar-client-reactive-producer-cache-caffeine-shaded", "pulsar-client-reactive-producer-cache-caffeine" ] } links { site("https://github.com/apache/pulsar-client-reactive") releaseNotes("https://github.com/apache/pulsar-client-reactive/releases/tag/v{version}") } } library("Quartz", "2.3.2") { group("org.quartz-scheduler") { modules = [ "quartz" { exclude group: "com.mchange", module: "c3p0" exclude group: "com.zaxxer", module: "*" }, "quartz-jobs" ] } links { site("https://github.com/quartz-scheduler/quartz") } } library("QueryDSL", "5.1.0") { group("com.querydsl") { imports = [ "querydsl-bom" ] } links { site("https://github.com/querydsl/querydsl") releaseNotes { version -> "https://github.com/querydsl/querydsl/releases/tag/QUERYDSL_%s" .formatted(version.toString("_")) } } } library("R2DBC H2", "1.0.0.RELEASE") { considerSnapshots() group("io.r2dbc") { modules = [ "r2dbc-h2" ] } } library("R2DBC MariaDB", "1.2.0") { group("org.mariadb") { modules = [ "r2dbc-mariadb" ] } } library("R2DBC MSSQL", "1.0.2.RELEASE") { group ("io.r2dbc") { modules = [ "r2dbc-mssql" ] } } library("R2DBC MySQL", "1.1.3") { group("io.asyncer") { modules = [ "r2dbc-mysql" ] } } library("R2DBC Pool", "1.0.1.RELEASE") { considerSnapshots() group("io.r2dbc") { modules = [ "r2dbc-pool" ] } links { site("https://github.com/r2dbc/r2dbc-pool") releaseNotes("https://github.com/r2dbc/r2dbc-pool/releases/tag/v{version}") } } library("R2DBC Postgresql", "1.0.5.RELEASE") { considerSnapshots() group("org.postgresql") { modules = [ "r2dbc-postgresql" ] } } library("R2DBC Proxy", "1.1.4.RELEASE") { considerSnapshots() group("io.r2dbc") { modules = [ "r2dbc-proxy" ] } } library("R2DBC SPI", "1.0.0.RELEASE") { considerSnapshots() group("io.r2dbc") { modules = [ "r2dbc-spi" ] } } library("Rabbit AMQP Client", "5.21.0") { group("com.rabbitmq") { modules = [ "amqp-client" ] } links { site("https://github.com/rabbitmq/rabbitmq-java-client") releaseNotes("https://github.com/rabbitmq/rabbitmq-java-client/releases/tag/v{version}") } } library("Rabbit Stream Client", "0.15.0") { group("com.rabbitmq") { modules = [ "stream-client" ] } links { site("https://github.com/rabbitmq/rabbitmq-stream-java-client") releaseNotes("https://github.com/rabbitmq/rabbitmq-stream-java-client/releases/tag/v{version}") } } library("Reactive Streams", "1.0.4") { group("org.reactivestreams") { modules = [ "reactive-streams" ] } } library("Reactor Bom", "2023.0.5") { considerSnapshots() calendarName = "Reactor" group("io.projectreactor") { imports = [ "reactor-bom" ] } links { site("https://projectreactor.io/") releaseNotes("https://github.com/reactor/reactor/releases/tag/{version}") } } library("REST Assured", "5.4.0") { group("io.rest-assured") { imports = [ "rest-assured-bom" ] } } library("RSocket", "1.1.3") { prohibit { versionRange "[1.1.4]" because "it contains a regression (https://github.com/rsocket/rsocket-java/issues/1092)" } group("io.rsocket") { imports = [ "rsocket-bom" ] } links { site("https://github.com/rsocket/rsocket-java") releaseNotes("https://github.com/rsocket/rsocket-java/releases/tag/{version}") } } library("RxJava3", "3.1.8") { group("io.reactivex.rxjava3") { modules = [ "rxjava" ] } } library("Spring Boot", "${version}") { group("org.springframework.boot") { modules = [ "spring-boot", "spring-boot-test", "spring-boot-test-autoconfigure", "spring-boot-testcontainers", "spring-boot-actuator", "spring-boot-actuator-autoconfigure", "spring-boot-autoconfigure", "spring-boot-autoconfigure-processor", "spring-boot-buildpack-platform", "spring-boot-configuration-metadata", "spring-boot-configuration-processor", "spring-boot-devtools", "spring-boot-docker-compose", "spring-boot-jarmode-tools", "spring-boot-loader", "spring-boot-loader-classic", "spring-boot-loader-tools", "spring-boot-properties-migrator", "spring-boot-starter", "spring-boot-starter-activemq", "spring-boot-starter-actuator", "spring-boot-starter-amqp", "spring-boot-starter-aop", "spring-boot-starter-artemis", "spring-boot-starter-batch", "spring-boot-starter-cache", "spring-boot-starter-data-cassandra", "spring-boot-starter-data-cassandra-reactive", "spring-boot-starter-data-couchbase", "spring-boot-starter-data-couchbase-reactive", "spring-boot-starter-data-elasticsearch", "spring-boot-starter-data-jdbc", "spring-boot-starter-data-jpa", "spring-boot-starter-data-ldap", "spring-boot-starter-data-mongodb", "spring-boot-starter-data-mongodb-reactive", "spring-boot-starter-data-r2dbc", "spring-boot-starter-data-redis", "spring-boot-starter-data-redis-reactive", "spring-boot-starter-data-neo4j", "spring-boot-starter-data-rest", "spring-boot-starter-freemarker", "spring-boot-starter-graphql", "spring-boot-starter-groovy-templates", "spring-boot-starter-hateoas", "spring-boot-starter-integration", "spring-boot-starter-jdbc", "spring-boot-starter-jersey", "spring-boot-starter-jetty", "spring-boot-starter-jooq", "spring-boot-starter-json", "spring-boot-starter-log4j2", "spring-boot-starter-logging", "spring-boot-starter-mail", "spring-boot-starter-mustache", "spring-boot-starter-oauth2-authorization-server", "spring-boot-starter-oauth2-client", "spring-boot-starter-oauth2-resource-server", "spring-boot-starter-pulsar", "spring-boot-starter-pulsar-reactive", "spring-boot-starter-quartz", "spring-boot-starter-reactor-netty", "spring-boot-starter-rsocket", "spring-boot-starter-security", "spring-boot-starter-test", "spring-boot-starter-thymeleaf", "spring-boot-starter-tomcat", "spring-boot-starter-undertow", "spring-boot-starter-validation", "spring-boot-starter-web", "spring-boot-starter-webflux", "spring-boot-starter-websocket", "spring-boot-starter-web-services" ] plugins = [ "spring-boot-maven-plugin" ] } links { site("https://spring.io/projects/spring-boot") github("https://github.com/spring-projects/spring-boot") javadoc("https://docs.spring.io/spring-boot/docs/{version}/api") docs("https://docs.spring.io/spring-boot/docs/{version}/reference/htmlsingle") releaseNotes("https://github.com/spring-projects/spring-boot/releases/tag/v{version}") add("layers-xsd") { version -> "layers-xsd: https://www.springframework.org/schema/boot/layers/layers-%s.%s.xsd" .formatted(version.major(), version.minor()) } } } library("SAAJ Impl", "3.0.3") { group("com.sun.xml.messaging.saaj") { modules = [ "saaj-impl" ] } } library("Selenium", "4.19.1") { group("org.seleniumhq.selenium") { imports = [ "selenium-bom" ] } links { site("https://www.selenium.dev") releaseNotes("https://github.com/SeleniumHQ/selenium/releases/tag/selenium-{version}") } } library("Selenium HtmlUnit", "4.13.0") { group("org.seleniumhq.selenium") { modules = [ "htmlunit-driver" ] } links { site("https://github.com/SeleniumHQ/htmlunit-driver") releaseNotes("https://github.com/SeleniumHQ/htmlunit-driver/releases/tag/htmlunit-driver-{version}") } } library("SendGrid", "4.10.2") { group("com.sendgrid") { modules = [ "sendgrid-java" ] } links { site("https://github.com/sendgrid/sendgrid-java") releaseNotes("https://github.com/sendgrid/sendgrid-java/releases/tag/{version}") } } library("SLF4J", "2.0.13") { group("org.slf4j") { modules = [ "jcl-over-slf4j", "jul-to-slf4j", "log4j-over-slf4j", "slf4j-api", "slf4j-ext", "slf4j-jdk-platform-logging", "slf4j-jdk14", "slf4j-log4j12", "slf4j-nop", "slf4j-reload4j", "slf4j-simple" ] } } library("SnakeYAML", "${snakeYamlVersion}") { group("org.yaml") { modules = [ "snakeyaml" ] } } library("Spring AMQP", "3.1.4") { considerSnapshots() group("org.springframework.amqp") { imports = [ "spring-amqp-bom" ] } links { site("https://spring.io/projects/spring-amqp") github("https://github.com/spring-projects/spring-amqp") javadoc("https://docs.spring.io/spring-amqp/docs/{version}/api") docs("https://docs.spring.io/spring-amqp/reference/{version}") releaseNotes("https://github.com/spring-projects/spring-amqp/releases/tag/v{version}") } } library("Spring Authorization Server", "1.3.0-RC1") { considerSnapshots() group("org.springframework.security") { modules = [ "spring-security-oauth2-authorization-server" ] } links { site("https://spring.io/projects/spring-authorization-server") github("https://github.com/spring-projects/spring-authorization-server") javadoc("https://docs.spring.io/spring-authorization-server/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-authorization-server/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-authorization-server/releases/tag/{version}") } } library("Spring Batch", "5.1.1") { considerSnapshots() group("org.springframework.batch") { imports = [ "spring-batch-bom" ] } links { site("https://spring.io/projects/spring-batch") github("https://github.com/spring-projects/spring-batch") javadoc("https://docs.spring.io/spring-batch/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-batch/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-batch/releases/tag/v{version}") } } library("Spring Data Bom", "2024.0.0-RC1") { considerSnapshots() calendarName = "Spring Data Release" group("org.springframework.data") { imports = [ "spring-data-bom" ] } links("spring-data") { site("https://spring.io/projects/spring-data") github("https://github.com/spring-projects/spring-data-bom") releaseNotes("https://github.com/spring-projects/spring-data-bom/releases/tag/{version}") } } library("Spring Framework", "${springFrameworkVersion}") { considerSnapshots() group("org.springframework") { imports = [ "spring-framework-bom" ] } links { site("https://spring.io/projects/spring-framework") github("https://github.com/spring-projects/spring-framework") javadoc("https://docs.spring.io/spring-framework/docs/{version}/javadoc-api") docs("https://docs.spring.io/spring-framework/reference/{version}") releaseNotes("https://github.com/spring-projects/spring-framework/releases/tag/v{version}") } } library("Spring GraphQL", "1.3.0-RC1") { considerSnapshots() group("org.springframework.graphql") { modules = [ "spring-graphql", "spring-graphql-test" ] } links { site("https://spring.io/projects/spring-graphql") github("https://github.com/spring-projects/spring-graphql") javadoc("https://docs.spring.io/spring-graphql/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-graphql/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-graphql/releases/tag/v{version}") } } library("Spring HATEOAS", "2.3.0-RC1") { considerSnapshots() group("org.springframework.hateoas") { modules = [ "spring-hateoas" ] } links { site("https://spring.io/projects/spring-hateoas") github("https://github.com/spring-projects/spring-hateoas") javadoc("https://docs.spring.io/spring-hateoas/docs/{version}/api") docs("https://docs.spring.io/spring-hateoas/docs/{version}/reference/html") releaseNotes("https://github.com/spring-projects/spring-hateoas/releases/tag/{version}") } } library("Spring Integration", "6.3.0-RC1") { considerSnapshots() group("org.springframework.integration") { imports = [ "spring-integration-bom" ] } links { site("https://spring.io/projects/spring-integration") github("https://github.com/spring-projects/spring-integration") javadoc("https://docs.spring.io/spring-integration/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-integration/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-integration/releases/tag/v{version}") } } library("Spring Kafka", "3.2.0-RC1") { considerSnapshots() group("org.springframework.kafka") { modules = [ "spring-kafka", "spring-kafka-test" ] } links { site("https://spring.io/projects/spring-kafka") github("https://github.com/spring-projects/spring-kafka") javadoc("https://docs.spring.io/spring-kafka/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-kafka/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-kafka/releases/tag/v{version}") } } library("Spring LDAP", "3.2.3") { considerSnapshots() group("org.springframework.ldap") { modules = [ "spring-ldap-core", "spring-ldap-ldif-core", "spring-ldap-odm", "spring-ldap-test" ] } links { site("https://spring.io/projects/spring-ldap") github("https://github.com/spring-projects/spring-ldap") javadoc("https://docs.spring.io/spring-ldap/docs/{version}/api") docs("https://docs.spring.io/spring-ldap/reference/{version}") releaseNotes("https://github.com/spring-projects/spring-ldap/releases/tag/{version}") } } library("Spring Pulsar", "1.1.0-RC1") { considerSnapshots() group("org.springframework.pulsar") { imports = [ "spring-pulsar-bom" ] } links { site("https://spring.io/projects/spring-pulsar") github("https://github.com/spring-projects/spring-pulsar") javadoc("https://docs.spring.io/spring-pulsar/docs/{version}/api/") docs("https://docs.spring.io/spring-pulsar/docs/{version}/reference") releaseNotes("https://github.com/spring-projects/spring-pulsar/releases/tag/v{version}") } } library("Spring RESTDocs", "3.0.1") { considerSnapshots() group("org.springframework.restdocs") { imports = [ "spring-restdocs-bom" ] } links { site("https://spring.io/projects/spring-restdocs") github("https://github.com/spring-projects/spring-restdocs") javadoc("https://docs.spring.io/spring-restdocs/docs/{version}/api/") docs("https://docs.spring.io/spring-restdocs/docs/{version}/reference/htmlsingle/") releaseNotes("https://github.com/spring-projects/spring-restdocs/releases/tag/v{version}") } } library("Spring Retry", "2.0.5") { considerSnapshots() group("org.springframework.retry") { modules = [ "spring-retry" ] } links { site("https://github.com/spring-projects/spring-retry") releaseNotes("https://github.com/spring-projects/spring-retry/releases/tag/v{version}") } } library("Spring Security", "6.3.0-RC1") { considerSnapshots() group("org.springframework.security") { imports = [ "spring-security-bom" ] } links { site("https://spring.io/projects/spring-security") github("https://github.com/spring-projects/spring-security") javadoc("https://docs.spring.io/spring-security/site/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-security/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-security/releases/tag/{version}") } } library("Spring Session", "3.3.0-RC1") { considerSnapshots() prohibit { startsWith(["Apple-", "Bean-", "Corn-", "Dragonfruit-"]) because "Spring Session switched to numeric version numbers" } group("org.springframework.session") { imports = [ "spring-session-bom" ] } links { site("https://spring.io/projects/spring-session") github("https://github.com/spring-projects/spring-session") javadoc("https://docs.spring.io/spring-session/docs/{version}/api") docs { version -> "https://docs.spring.io/spring-session/reference/%s" .formatted(version.forAntora()) } releaseNotes("https://github.com/spring-projects/spring-session/releases/tag/{version}") } } library("Spring WS", "4.0.10") { considerSnapshots() group("org.springframework.ws") { imports = [ "spring-ws-bom" ] } links("spring-webservices") { site("https://spring.io/projects/spring-ws") github("https://github.com/spring-projects/spring-ws") javadoc("https://docs.spring.io/spring-ws/docs/{version}/api") docs("https://docs.spring.io/spring-ws/docs/{version}/reference/html") releaseNotes("https://github.com/spring-projects/spring-ws/releases/tag/v{version}") } } library("SQLite JDBC", "3.45.3.0") { group("org.xerial") { modules = [ "sqlite-jdbc" ] } links { site("https://github.com/xerial/sqlite-jdbc") releaseNotes("https://github.com/xerial/sqlite-jdbc/releases/tag/{version}") } } library("Testcontainers", "1.19.7") { group("org.testcontainers") { imports = [ "testcontainers-bom" ] } links { site("https://java.testcontainers.org") releaseNotes("https://github.com/testcontainers/testcontainers-java/releases/tag/{version}") } } library("Thymeleaf", "3.1.2.RELEASE") { group("org.thymeleaf") { modules = [ "thymeleaf", "thymeleaf-spring6" ] } links { site("https://www.thymeleaf.org/") releaseNotes("https://github.com/thymeleaf/thymeleaf/releases/tag/thymeleaf-{version}") } } library("Thymeleaf Extras Data Attribute", "2.0.1") { group("com.github.mxab.thymeleaf.extras") { modules = [ "thymeleaf-extras-data-attribute" ] } } library("Thymeleaf Extras SpringSecurity", "3.1.2.RELEASE") { group("org.thymeleaf.extras") { modules = [ "thymeleaf-extras-springsecurity6" ] } } library("Thymeleaf Layout Dialect", "3.3.0") { group("nz.net.ultraq.thymeleaf") { modules = [ "thymeleaf-layout-dialect" ] } } library("Tomcat", "${tomcatVersion}") { group("org.apache.tomcat") { modules = [ "tomcat-annotations-api", "tomcat-jdbc", "tomcat-jsp-api" ] } group("org.apache.tomcat.embed") { modules = [ "tomcat-embed-core", "tomcat-embed-el", "tomcat-embed-jasper", "tomcat-embed-websocket" ] } links { site("https://tomcat.apache.org") docs { version -> "https://tomcat.apache.org/tomcat-%s.%s-doc".formatted(version.major(), version.minor()) } } } library("UnboundID LDAPSDK", "6.0.11") { group("com.unboundid") { modules = [ "unboundid-ldapsdk" ] } } library("Undertow", "2.3.12.Final") { group("io.undertow") { modules = [ "undertow-core", "undertow-servlet", "undertow-websockets-jsr" ] } } library("Versions Maven Plugin", "2.16.2") { group("org.codehaus.mojo") { plugins = [ "versions-maven-plugin" ] } } library("WebJars Locator Core", "0.58") { group("org.webjars") { modules = [ "webjars-locator-core" ] } } library("WSDL4j", "1.6.3") { group("wsdl4j") { modules = [ "wsdl4j" ] } } library("XML Maven Plugin", "1.1.0") { group("org.codehaus.mojo") { plugins = [ "xml-maven-plugin" ] } } library("XmlUnit2", "2.9.1") { group("org.xmlunit") { modules = [ "xmlunit-assertj", "xmlunit-assertj3", "xmlunit-core", "xmlunit-jakarta-jaxb-impl", "xmlunit-legacy", "xmlunit-matchers", "xmlunit-placeholders" ] } links { site("https://github.com/xmlunit/xmlunit") releaseNotes("https://github.com/xmlunit/xmlunit/releases/tag/v{version}") } } library("Yasson", "3.0.3") { group("org.eclipse") { modules = [ "yasson" ] } links { site("https://github.com/eclipse-ee4j/yasson") releaseNotes("https://github.com/eclipse-ee4j/yasson/releases/tag/{version}") } } } generateMetadataFileForMavenPublication { enabled = false }