mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-10-02 20:49:02 +00:00
Prior to this commit, we only (indirectly) configured external Javadoc links for types in the javax.annotation package for JSR 250, since those types are part of Java 8 SE. However, an external Javadoc link for types from JSR 305 was not configured. To address this issue, this commit now configures an external Javadoc link for JSR 305 types. However, the external Javadoc link for JSR 305 must be configured last to ensure that types from JSR 250 (such as @PostConstruct) are still supported. This is due to the fact that JSR 250 and JSR 305 both define types in javax.annotation, which results in a split package, and the javadoc tool does not support split packages across multiple external Javadoc sites. Instead, the Javadoc tool iterates over all external links, and the first external site that claims to support a given package (via the package-list file) wins. This means: - Javadoc for JSR 250 annotations is fully supported. - Javadoc for JSR 305 annotations in the javax.annotation package will continue to result in a 404 (page not found) error. - Javadoc for JSR 305 annotations in the javax.annotation.meta package is fully supported. For Spring Framework 6.0, the Javadoc for JSR 250 types in jakarta.annotation package is served from the JBoss Application Server Javadoc site instead of from Oracle's Java SE documentation site, since JSR 250 annotations are no longer included in Java SE. Closes gh-27904
440 lines
16 KiB
Groovy
440 lines
16 KiB
Groovy
plugins {
|
|
id 'io.spring.dependency-management' version '1.0.11.RELEASE' apply false
|
|
id 'io.spring.nohttp' version '0.0.10'
|
|
id "io.freefair.aspectj" version '6.2.0' apply false
|
|
id 'org.jetbrains.dokka' version '1.5.0' apply false
|
|
id 'org.jetbrains.kotlin.jvm' version '1.5.32' apply false
|
|
id "org.jetbrains.kotlin.plugin.serialization" version "1.5.32" apply false
|
|
id 'org.asciidoctor.jvm.convert' version '3.3.2'
|
|
id 'org.asciidoctor.jvm.pdf' version '3.3.2'
|
|
id "org.unbroken-dome.xjc" version '2.0.0' apply false
|
|
id "com.github.ben-manes.versions" version '0.39.0'
|
|
id "com.github.johnrengelman.shadow" version '7.0.0' apply false
|
|
id 'de.undercouch.download' version '4.1.2'
|
|
id "me.champeau.jmh" version "0.6.6" apply false
|
|
}
|
|
|
|
ext {
|
|
moduleProjects = subprojects.findAll { it.name.startsWith("spring-") }
|
|
javaProjects = subprojects - project(":framework-bom")
|
|
withoutJclOverSlf4j = {
|
|
exclude group: "org.slf4j", name: "jcl-over-slf4j"
|
|
}
|
|
}
|
|
|
|
configure(allprojects) { project ->
|
|
apply plugin: "io.spring.dependency-management"
|
|
|
|
dependencyManagement {
|
|
imports {
|
|
mavenBom "com.fasterxml.jackson:jackson-bom:2.12.6"
|
|
mavenBom "io.netty:netty-bom:4.1.73.Final"
|
|
mavenBom "io.projectreactor:reactor-bom:2020.0.15"
|
|
mavenBom "io.r2dbc:r2dbc-bom:Arabba-SR12"
|
|
mavenBom "io.rsocket:rsocket-bom:1.1.1"
|
|
mavenBom "org.eclipse.jetty:jetty-bom:9.4.44.v20210927"
|
|
mavenBom "org.jetbrains.kotlin:kotlin-bom:1.5.32"
|
|
mavenBom "org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.5.2"
|
|
mavenBom "org.jetbrains.kotlinx:kotlinx-serialization-bom:1.2.2"
|
|
mavenBom "org.junit:junit-bom:5.8.2"
|
|
}
|
|
dependencies {
|
|
dependencySet(group: 'org.apache.logging.log4j', version: '2.17.1') {
|
|
entry 'log4j-api'
|
|
entry 'log4j-core'
|
|
entry 'log4j-jul'
|
|
entry 'log4j-slf4j-impl'
|
|
}
|
|
dependency "org.slf4j:slf4j-api:1.7.33"
|
|
dependency("com.google.code.findbugs:findbugs:3.0.1") {
|
|
exclude group: "dom4j", name: "dom4j"
|
|
}
|
|
dependency "com.google.code.findbugs:jsr305:3.0.2"
|
|
|
|
dependencySet(group: 'org.aspectj', version: '1.9.7') {
|
|
entry 'aspectjrt'
|
|
entry 'aspectjtools'
|
|
entry 'aspectjweaver'
|
|
}
|
|
dependencySet(group: 'org.codehaus.groovy', version: '3.0.9') {
|
|
entry 'groovy'
|
|
entry 'groovy-jsr223'
|
|
entry 'groovy-templates' // requires findbugs for warning-free compilation
|
|
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.21"
|
|
dependency "io.reactivex.rxjava3:rxjava:3.1.3"
|
|
dependency "io.smallrye.reactive:mutiny:1.2.0"
|
|
dependency "io.projectreactor.tools:blockhound:1.0.6.RELEASE"
|
|
|
|
dependency "com.caucho:hessian:4.0.63"
|
|
dependency "com.fasterxml:aalto-xml:1.3.0"
|
|
dependency("com.fasterxml.woodstox:woodstox-core:6.2.7") {
|
|
exclude group: "stax", name: "stax-api"
|
|
}
|
|
dependency "com.google.code.gson:gson:2.8.9"
|
|
dependency "com.google.protobuf:protobuf-java-util:3.19.1"
|
|
dependency "com.googlecode.protobuf-java-format:protobuf-java-format:1.4"
|
|
dependency("com.thoughtworks.xstream:xstream:1.4.18") {
|
|
exclude group: "xpp3", name: "xpp3_min"
|
|
exclude group: "xmlpull", name: "xmlpull"
|
|
}
|
|
dependency "org.apache.johnzon:johnzon-jsonb:1.2.15"
|
|
dependency("org.codehaus.jettison:jettison:1.3.8") {
|
|
exclude group: "stax", name: "stax-api"
|
|
}
|
|
dependencySet(group: 'org.jibx', version: '1.3.3') {
|
|
entry 'jibx-bind'
|
|
entry 'jibx-run'
|
|
}
|
|
dependency "org.ogce:xpp3:1.1.6"
|
|
dependency "org.yaml:snakeyaml:1.30"
|
|
|
|
dependency "com.h2database:h2:2.0.206"
|
|
dependency "com.github.ben-manes.caffeine:caffeine:2.9.3"
|
|
dependency "com.github.librepdf:openpdf:1.3.26"
|
|
dependency "com.rometools:rome:1.16.0"
|
|
dependency "commons-io:commons-io:2.5"
|
|
dependency "io.vavr:vavr:0.10.4"
|
|
dependency "net.sf.jopt-simple:jopt-simple:5.0.4"
|
|
dependencySet(group: 'org.apache.activemq', version: '5.16.2') {
|
|
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.9.0"
|
|
dependencySet(group: 'org.apache.derby', version: '10.14.2.0') {
|
|
entry 'derby'
|
|
entry 'derbyclient'
|
|
}
|
|
dependency "org.apache.poi:poi-ooxml:4.1.2"
|
|
dependency "org.apache-extras.beanshell:bsh:2.0b6"
|
|
dependency "org.freemarker:freemarker:2.3.31"
|
|
dependency "org.hsqldb:hsqldb:2.5.2"
|
|
dependency "org.quartz-scheduler:quartz:2.3.2"
|
|
dependency "org.codehaus.fabric3.api:commonj:1.1.0"
|
|
dependency "net.sf.ehcache:ehcache:2.10.6"
|
|
dependency "org.ehcache:jcache:1.0.1"
|
|
dependency "org.ehcache:ehcache:3.4.0"
|
|
dependency "org.hibernate:hibernate-core:5.4.33.Final"
|
|
dependency "org.hibernate:hibernate-validator:6.2.1.Final"
|
|
dependency "org.webjars:webjars-locator-core:0.48"
|
|
dependency "org.webjars:underscorejs:1.8.3"
|
|
|
|
dependencySet(group: 'org.apache.tomcat', version: '9.0.56') {
|
|
entry 'tomcat-util'
|
|
entry('tomcat-websocket') {
|
|
exclude group: "org.apache.tomcat", name: "tomcat-servlet-api"
|
|
exclude group: "org.apache.tomcat", name: "tomcat-websocket-api"
|
|
}
|
|
}
|
|
dependencySet(group: 'org.apache.tomcat.embed', version: '9.0.56') {
|
|
entry 'tomcat-embed-core'
|
|
entry 'tomcat-embed-websocket'
|
|
}
|
|
dependencySet(group: 'io.undertow', version: '2.2.14.Final') {
|
|
entry 'undertow-core'
|
|
entry('undertow-servlet') {
|
|
exclude group: "org.jboss.spec.javax.servlet", name: "jboss-servlet-api_4.0_spec"
|
|
exclude group: "org.jboss.spec.javax.annotation", name: "jboss-annotations-api_1.3_spec"
|
|
}
|
|
entry('undertow-websockets-jsr') {
|
|
exclude group: "org.jboss.spec.javax.websocket", name: "jboss-websocket-api_1.1_spec"
|
|
}
|
|
}
|
|
|
|
dependency "org.eclipse.jetty:jetty-reactive-httpclient:1.1.10"
|
|
dependency 'org.apache.httpcomponents.client5:httpclient5:5.1.2'
|
|
dependency 'org.apache.httpcomponents.core5:httpcore5-reactive:5.1.2'
|
|
dependency("org.apache.httpcomponents:httpclient:4.5.13") {
|
|
exclude group: "commons-logging", name: "commons-logging"
|
|
}
|
|
dependency("org.apache.httpcomponents:httpasyncclient:4.1.5") {
|
|
exclude group: "commons-logging", name: "commons-logging"
|
|
}
|
|
dependencySet(group: 'com.squareup.okhttp3', version: '3.14.9') {
|
|
entry 'okhttp'
|
|
entry 'mockwebserver'
|
|
}
|
|
|
|
dependency "org.jruby:jruby:9.2.20.1"
|
|
dependency "org.python:jython-standalone:2.7.1"
|
|
dependency "org.mozilla:rhino:1.7.11"
|
|
|
|
dependency "commons-fileupload:commons-fileupload:1.4"
|
|
dependency "org.synchronoss.cloud:nio-multipart-parser:1.1.0"
|
|
|
|
dependency("org.dom4j:dom4j:2.1.3") {
|
|
exclude group: "jaxen", name: "jaxen"
|
|
exclude group: "net.java.dev.msv", name: "xsdlib"
|
|
exclude group: "pull-parser", name: "pull-parser"
|
|
exclude group: "xpp3", name: "xpp3"
|
|
}
|
|
dependency("jaxen:jaxen:1.2.0") {
|
|
exclude group: "dom4j", name: "dom4j"
|
|
}
|
|
|
|
dependency("junit:junit:4.13.2") {
|
|
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:7.4.0"
|
|
dependency "org.junit.support:testng-engine:1.0.1"
|
|
dependency "org.hamcrest:hamcrest:2.1"
|
|
dependency "org.awaitility:awaitility:3.1.6"
|
|
dependency "org.assertj:assertj-core:3.22.0"
|
|
dependencySet(group: 'org.xmlunit', version: '2.8.4') {
|
|
entry 'xmlunit-assertj'
|
|
entry('xmlunit-matchers') {
|
|
exclude group: "org.hamcrest", name: "hamcrest-core"
|
|
}
|
|
}
|
|
dependencySet(group: 'org.mockito', version: '4.2.0') {
|
|
entry('mockito-core') {
|
|
exclude group: "org.hamcrest", name: "hamcrest-core"
|
|
}
|
|
entry 'mockito-junit-jupiter'
|
|
}
|
|
dependency "io.mockk:mockk:1.12.1"
|
|
|
|
dependency("net.sourceforge.htmlunit:htmlunit:2.56.0") {
|
|
exclude group: "commons-logging", name: "commons-logging"
|
|
}
|
|
dependency("org.seleniumhq.selenium:htmlunit-driver:2.56.0") {
|
|
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.6.0"
|
|
dependency "org.bouncycastle:bcpkix-jdk15on:1.66"
|
|
|
|
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.82"
|
|
dependency "joda-time:joda-time:2.10.13"
|
|
dependency "org.eclipse.persistence:org.eclipse.persistence.jpa:2.7.9"
|
|
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"
|
|
}
|
|
generatedPomCustomization {
|
|
enabled = false
|
|
}
|
|
resolutionStrategy {
|
|
cacheChangingModulesFor 0, "seconds"
|
|
}
|
|
repositories {
|
|
mavenCentral()
|
|
maven { url "https://repo.spring.io/libs-spring-framework-build" }
|
|
}
|
|
}
|
|
configurations.all {
|
|
resolutionStrategy {
|
|
cacheChangingModulesFor 0, "seconds"
|
|
cacheDynamicVersionsFor 0, "seconds"
|
|
}
|
|
}
|
|
}
|
|
|
|
configure([rootProject] + javaProjects) { project ->
|
|
group = "org.springframework"
|
|
|
|
apply plugin: "java"
|
|
apply plugin: "java-test-fixtures"
|
|
apply plugin: "checkstyle"
|
|
apply plugin: 'org.springframework.build.compile'
|
|
apply from: "${rootDir}/gradle/toolchains.gradle"
|
|
apply from: "${rootDir}/gradle/ide.gradle"
|
|
|
|
pluginManager.withPlugin("kotlin") {
|
|
apply plugin: "org.jetbrains.dokka"
|
|
apply from: "${rootDir}/gradle/docs-dokka.gradle"
|
|
|
|
compileKotlin {
|
|
kotlinOptions {
|
|
languageVersion = "1.3"
|
|
apiVersion = "1.3"
|
|
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings", "-Xopt-in=kotlin.RequiresOptIn"]
|
|
allWarningsAsErrors = true
|
|
}
|
|
}
|
|
compileTestKotlin {
|
|
kotlinOptions {
|
|
freeCompilerArgs = ["-Xjsr305=strict"]
|
|
}
|
|
}
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
include(["**/*Tests.class", "**/*Test.class"])
|
|
systemProperty("java.awt.headless", "true")
|
|
systemProperty("testGroups", project.properties.get("testGroups"))
|
|
systemProperty("io.netty.leakDetection.level", "paranoid")
|
|
}
|
|
|
|
checkstyle {
|
|
toolVersion = "9.2"
|
|
configDirectory.set(rootProject.file("src/checkstyle"))
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation("org.junit.jupiter:junit-jupiter-api")
|
|
testImplementation("org.junit.jupiter:junit-jupiter-params")
|
|
testImplementation("org.junit.platform:junit-platform-suite-api")
|
|
testImplementation("org.mockito:mockito-core")
|
|
testImplementation("org.mockito:mockito-junit-jupiter")
|
|
testImplementation("io.mockk:mockk")
|
|
testImplementation("org.assertj:assertj-core")
|
|
// Pull in the latest JUnit 5 Launcher API to ensure proper support in IDEs.
|
|
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine")
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
testRuntimeOnly("org.junit.platform:junit-platform-suite-engine")
|
|
testRuntimeOnly("org.apache.logging.log4j:log4j-core")
|
|
testRuntimeOnly("org.apache.logging.log4j:log4j-jul")
|
|
testRuntimeOnly("org.apache.logging.log4j:log4j-slf4j-impl")
|
|
// JSR-305 only used for non-required meta-annotations
|
|
compileOnly("com.google.code.findbugs:jsr305")
|
|
testCompileOnly("com.google.code.findbugs:jsr305")
|
|
checkstyle("io.spring.javaformat:spring-javaformat-checkstyle:0.0.29")
|
|
}
|
|
|
|
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/docs/api/v1/content/SSEQTP_8.5.5/com.ibm.websphere.javadoc.doc/web/apidocs/",
|
|
"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.10/",
|
|
"https://fasterxml.github.io/jackson-databind/javadoc/2.10/",
|
|
"https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.10/",
|
|
"https://hc.apache.org/httpcomponents-client-5.1.x/current/httpclient5/apidocs/",
|
|
"https://projectreactor.io/docs/test/release/api/",
|
|
"https://junit.org/junit4/javadoc/4.13.2/",
|
|
// Disabling linking to JUnit 5.8.2, since the `package-list` file no longer exists due to
|
|
// https://github.com/junit-team/junit5/commit/67ad4e545518b0ce2b0e7c96df31a669866d5003.
|
|
// "https://junit.org/junit5/docs/5.8.2/api/",
|
|
"https://www.reactive-streams.org/reactive-streams-1.0.3-javadoc/",
|
|
"https://javadoc.io/static/io.rsocket/rsocket-core/1.1.1/",
|
|
"https://r2dbc.io/spec/0.8.5.RELEASE/api/",
|
|
// The external Javadoc link for JSR 305 must come last to ensure that types from
|
|
// JSR 250 (such as @PostConstruct) are still supported. This is due to the fact
|
|
// that JSR 250 and JSR 305 both define types in javax.annotation, which results
|
|
// in a split package, and the javadoc tool does not support split packages
|
|
// across multiple external Javadoc sites.
|
|
"https://www.javadoc.io/doc/com.google.code.findbugs/jsr305/3.0.2/"
|
|
] as String[]
|
|
}
|
|
|
|
configure(moduleProjects) { project ->
|
|
apply from: "${rootDir}/gradle/spring-module.gradle"
|
|
}
|
|
|
|
configure(rootProject) {
|
|
description = "Spring Framework"
|
|
|
|
apply plugin: "groovy"
|
|
apply plugin: "kotlin"
|
|
apply plugin: "io.spring.nohttp"
|
|
apply plugin: 'org.springframework.build.api-diff'
|
|
apply from: "${rootDir}/gradle/publications.gradle"
|
|
apply from: "${rootDir}/gradle/docs.gradle"
|
|
|
|
nohttp {
|
|
source.exclude "**/test-output/**"
|
|
allowlistFile = project.file("src/nohttp/allowlist.lines")
|
|
def rootPath = file(rootDir).toPath()
|
|
def projectDirs = allprojects.collect { it.projectDir } + "${rootDir}/buildSrc"
|
|
projectDirs.forEach { dir ->
|
|
[ 'bin', 'build', 'out', '.settings' ]
|
|
.collect { rootPath.relativize(new File(dir, it).toPath()) }
|
|
.forEach { source.exclude "$it/**" }
|
|
[ '.classpath', '.project' ]
|
|
.collect { rootPath.relativize(new File(dir, it).toPath()) }
|
|
.forEach { source.exclude "$it" }
|
|
}
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
mavenJava(MavenPublication) {
|
|
artifact docsZip
|
|
artifact schemaZip
|
|
artifact distZip
|
|
}
|
|
}
|
|
}
|
|
}
|