You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by pa...@apache.org on 2020/10/12 13:15:22 UTC

[groovy] branch master updated (2678566 -> c4e62b3)

This is an automated email from the ASF dual-hosted git repository.

paulk pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git.


    from 2678566  remove old-style dependency reference
     new 1ade49c  Fix distribution missing javadocs for optional modules
     new 6556d41  re-enable core spec tests
     new c4e62b3  remove unnecessary dependency

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/main/groovy/org.apache.groovy-all.gradle   | 88 ++++------------------
 .../src/main/groovy/org.apache.groovy-core.gradle  |  4 +-
 .../groovy/org.apache.groovy-distribution.gradle   | 25 ++----
 ...dle => org.apache.groovy-doc-aggregator.gradle} | 79 +------------------
 .../groovy/org.apache.groovy-documented.gradle     |  4 +-
 ...nsion.groovy => DocAggregationExtension.groovy} |  2 +-
 src/spec/test/typing/TypeCheckingHintsTest.groovy  |  5 +-
 src/spec/test/typing/TypeCheckingTest.groovy       |  2 +-
 .../org.codehaus.groovy.runtime.ExtensionModule    |  4 +-
 subprojects/groovy-all/build.gradle                |  2 +-
 subprojects/groovy-binary/build.gradle             | 10 ++-
 subprojects/groovy-cli-picocli/build.gradle        |  1 -
 subprojects/groovy-jmx/build.gradle                |  1 -
 13 files changed, 42 insertions(+), 185 deletions(-)
 copy buildSrc/src/main/groovy/{org.apache.groovy-all.gradle => org.apache.groovy-doc-aggregator.gradle} (58%)
 rename buildSrc/src/main/groovy/org/apache/groovy/gradle/{GroovyAllExtension.groovy => DocAggregationExtension.groovy} (97%)


[groovy] 03/03: remove unnecessary dependency

Posted by pa...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit c4e62b32971d6db15a6af87d0f336f96f99f258a
Author: Paul King <pa...@asert.com.au>
AuthorDate: Mon Oct 12 23:14:52 2020 +1000

    remove unnecessary dependency
---
 subprojects/groovy-cli-picocli/build.gradle | 1 -
 subprojects/groovy-jmx/build.gradle         | 1 -
 2 files changed, 2 deletions(-)

diff --git a/subprojects/groovy-cli-picocli/build.gradle b/subprojects/groovy-cli-picocli/build.gradle
index c323d04..4892590 100644
--- a/subprojects/groovy-cli-picocli/build.gradle
+++ b/subprojects/groovy-cli-picocli/build.gradle
@@ -23,7 +23,6 @@ plugins {
 dependencies {
     api rootProject   // CliBuilder uses Option...
     implementation "info.picocli:picocli:${versions.picocli}"
-    testImplementation testFixtures(project(":"))
     testImplementation project(':groovy-test')
     testImplementation project(':groovy-dateutil')
 }
diff --git a/subprojects/groovy-jmx/build.gradle b/subprojects/groovy-jmx/build.gradle
index 66bc818..92743ab 100644
--- a/subprojects/groovy-jmx/build.gradle
+++ b/subprojects/groovy-jmx/build.gradle
@@ -23,7 +23,6 @@ plugins {
 dependencies {
     api rootProject // JmxBuilder extends FactoryBuilderSupport...
     testImplementation project(':groovy-test')
-    testImplementation testFixtures(project(":"))
     testRuntimeOnly("org.apache.ivy:ivy:${versions.ivy}") {
         transitive = false
     }


[groovy] 02/03: re-enable core spec tests

Posted by pa...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 6556d417ee06782b274235e8062680527c111ce5
Author: Paul King <pa...@asert.com.au>
AuthorDate: Mon Oct 12 23:14:17 2020 +1000

    re-enable core spec tests
---
 buildSrc/src/main/groovy/org.apache.groovy-core.gradle               | 4 ++--
 src/spec/test/typing/TypeCheckingHintsTest.groovy                    | 5 +----
 src/spec/test/typing/TypeCheckingTest.groovy                         | 2 +-
 .../META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule      | 4 ++--
 4 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/buildSrc/src/main/groovy/org.apache.groovy-core.gradle b/buildSrc/src/main/groovy/org.apache.groovy-core.gradle
index d91d5a1..9e5fd1c 100644
--- a/buildSrc/src/main/groovy/org.apache.groovy-core.gradle
+++ b/buildSrc/src/main/groovy/org.apache.groovy-core.gradle
@@ -62,14 +62,14 @@ sourceSets {
     }
     test {
         groovy {
-            srcDirs = ['src/test']
+            srcDirs += ['src/test']
             if (!JavaVersion.current().isJava9Compatible()) {
                 exclude '**/v9/*'
                 exclude '**/vm9/*'
             }
         }
         resources {
-            srcDirs = ['src/test-resources']
+            srcDirs += ['src/test-resources']
         }
     }
     tools {
diff --git a/src/spec/test/typing/TypeCheckingHintsTest.groovy b/src/spec/test/typing/TypeCheckingHintsTest.groovy
index 9ab41f0..d9cdd07 100644
--- a/src/spec/test/typing/TypeCheckingHintsTest.groovy
+++ b/src/spec/test/typing/TypeCheckingHintsTest.groovy
@@ -16,12 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-
-
-
 package typing
 
-import StaticTypeCheckingTestCase
+import groovy.transform.stc.StaticTypeCheckingTestCase
 
 /**
  * This unit test contains both assertScript and new GroovyShell().evaluate
diff --git a/src/spec/test/typing/TypeCheckingTest.groovy b/src/spec/test/typing/TypeCheckingTest.groovy
index fdfff0e..fc87413 100644
--- a/src/spec/test/typing/TypeCheckingTest.groovy
+++ b/src/spec/test/typing/TypeCheckingTest.groovy
@@ -19,7 +19,7 @@
 
 package typing
 
-import StaticTypeCheckingTestCase
+import groovy.transform.stc.StaticTypeCheckingTestCase
 
 /**
  * This unit test contains both assertScript and new GroovyShell().evaluate
diff --git a/src/test-resources/META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule b/src/test-resources/META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule
index 1abb6c5..d6fde6a 100644
--- a/src/test-resources/META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule
+++ b/src/test-resources/META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule
@@ -20,5 +20,5 @@
 // This file is used to test the extension module framework
 moduleName=Test module
 moduleVersion=1.0-test
-extensionClasses=org.codehaus.groovy.runtime.m12n.TestStringExtension,org.codehaus.groovy.runtime.m12n.Groovy6496Extension,org.codehaus.groovy.runtime.m12n.TestPrimitiveWrapperExtension
-staticExtensionClasses=org.codehaus.groovy.runtime.m12n.TestStaticStringExtension
+extensionClasses=support.MaxRetriesExtension,org.codehaus.groovy.runtime.m12n.TestStringExtension,org.codehaus.groovy.runtime.m12n.Groovy6496Extension,org.codehaus.groovy.runtime.m12n.TestPrimitiveWrapperExtension
+staticExtensionClasses=support.StaticStringExtension,org.codehaus.groovy.runtime.m12n.TestStaticStringExtension


[groovy] 01/03: Fix distribution missing javadocs for optional modules

Posted by pa...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 1ade49c62b2251d19d200211fe61b62e9da5f760
Author: Cedric Champeau <cc...@apache.org>
AuthorDate: Mon Oct 12 11:10:44 2020 +0200

    Fix distribution missing javadocs for optional modules
---
 .../src/main/groovy/org.apache.groovy-all.gradle   | 88 ++++------------------
 .../groovy/org.apache.groovy-distribution.gradle   | 25 ++----
 ...dle => org.apache.groovy-doc-aggregator.gradle} | 79 +------------------
 .../groovy/org.apache.groovy-documented.gradle     |  4 +-
 ...nsion.groovy => DocAggregationExtension.groovy} |  2 +-
 subprojects/groovy-all/build.gradle                |  2 +-
 subprojects/groovy-binary/build.gradle             | 10 ++-
 7 files changed, 36 insertions(+), 174 deletions(-)

diff --git a/buildSrc/src/main/groovy/org.apache.groovy-all.gradle b/buildSrc/src/main/groovy/org.apache.groovy-all.gradle
index 88e19b6..cde704e 100644
--- a/buildSrc/src/main/groovy/org.apache.groovy-all.gradle
+++ b/buildSrc/src/main/groovy/org.apache.groovy-all.gradle
@@ -26,93 +26,40 @@
     It also aggregates docs and sources but does NOT provide an "uber" jar.
  */
 import org.apache.groovy.gradle.GroovyLibraryExtension
-import org.apache.groovy.gradle.GroovyAllExtension
 
 plugins {
     id 'org.apache.groovy-common'
     id 'org.apache.groovy-platform'
     id 'org.apache.groovy-documented'
+    id 'org.apache.groovy-doc-aggregator'
 }
 
-extensions.create("groovyAll", GroovyAllExtension)
-
 javaPlatform {
     allowDependencies()
 }
 
-def projectsIncludedInGroovyAll = rootProject.allprojects.findAll {
-    if (it.pluginManager.hasPlugin('org.apache.groovy-base')) {
-        return it.extensions.getByType(GroovyLibraryExtension).includeInGroovyAll.get()
-    }
-    return false
-}
-
 configurations {
     allSources {
-        canBeConsumed = false
-        canBeResolved = true
-        transitive = false
         extendsFrom runtime
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
-            attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, DocsType.SOURCES))
-            attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, "aggregation"))
-        }
     }
     allSourcesRuntimeClasspath {
-        canBeConsumed = false
-        canBeResolved = true
         extendsFrom runtime
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.LIBRARY))
-            attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
-            attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, "javadocClasspath"))
-        }
     }
 }
 
-dependencies {
-    projectsIncludedInGroovyAll.each {
-        api(it)
-    }
-    attributesSchema {
-        attribute(Usage.USAGE_ATTRIBUTE) {
-            compatibilityRules.add(JavadocClasspathCompatibilityRule)
-        }
+def projectsIncludedInGroovyAll = rootProject.allprojects.findAll {
+    if (it.pluginManager.hasPlugin('org.apache.groovy-base')) {
+        return it.extensions.getByType(GroovyLibraryExtension).includeInGroovyAll.get()
     }
+    return false
 }
 
-def sourcesAllJar = tasks.register("sourcesAllJar", Jar) {
-    from configurations.allSources
-    archiveClassifier = 'sources'
-}
-
-def javadocAll = tasks.register("javadocAll", Javadoc) {
-    destinationDir = file("$buildDir/alljavadoc")
-    source configurations.allSources
-    classpath = configurations.allSourcesRuntimeClasspath
-    groovyAll.excludedFromJavadocs.each {
-        exclude it
+dependencies {
+    projectsIncludedInGroovyAll.each {
+        api(it)
     }
 }
 
-def javadocAllJar = tasks.register("javadocAllJar", Jar) {
-    from javadocAll
-    archiveClassifier = 'javadoc'
-}
-
-def groovydocAll = tasks.register("groovydocAll", Groovydoc) {
-    destinationDir = file("${buildDir}/allgroovydoc")
-    source = configurations.allSources
-    classpath = configurations.allSourcesRuntimeClasspath
-}
-
-def groovydocAllJar = tasks.register("groovydocAllJar", Jar) {
-    from groovydocAll
-    archiveClassifier = 'groovydoc'
-}
-
 def createDocumentationPublication = { String name, TaskProvider artifact ->
     def outgoing = configurations.create("${name}Elements") {
         it.canBeConsumed = true
@@ -134,9 +81,9 @@ def createDocumentationPublication = { String name, TaskProvider artifact ->
     }
 }
 
-createDocumentationPublication('sources', sourcesAllJar)
-createDocumentationPublication('javadoc', javadocAllJar)
-createDocumentationPublication('groovydoc', groovydocAllJar)
+createDocumentationPublication('sources', tasks.named('sourcesAllJar'))
+createDocumentationPublication('javadoc', tasks.named('javadocAllJar'))
+createDocumentationPublication('groovydoc', tasks.named('groovydocAllJar'))
 
 configurations {
     allJavadoc {
@@ -148,7 +95,7 @@ configurations {
         }
         outgoing {
             artifacts {
-                artifact javadocAll
+                artifact tasks.named('javadocAll')
             }
         }
     }
@@ -161,17 +108,8 @@ configurations {
         }
         outgoing {
             artifacts {
-                artifact groovydocAll
+                artifact tasks.named('groovydocAll')
             }
         }
     }
 }
-
-class JavadocClasspathCompatibilityRule implements AttributeCompatibilityRule<Usage> {
-    @Override
-    void execute(CompatibilityCheckDetails<Usage> details) {
-        if (details.consumerValue.name == 'javadocClasspath' && details.producerValue.name == Usage.JAVA_RUNTIME) {
-            details.compatible()
-        }
-    }
-}
\ No newline at end of file
diff --git a/buildSrc/src/main/groovy/org.apache.groovy-distribution.gradle b/buildSrc/src/main/groovy/org.apache.groovy-distribution.gradle
index e1de8a7..fe399fb 100644
--- a/buildSrc/src/main/groovy/org.apache.groovy-distribution.gradle
+++ b/buildSrc/src/main/groovy/org.apache.groovy-distribution.gradle
@@ -25,6 +25,7 @@ plugins {
     id 'jvm-ecosystem'
     id 'org.apache.groovy-common'
     id 'org.apache.groovy-aggregating-project'
+    id 'org.apache.groovy-doc-aggregator'
     id 'org.asciidoctor.jvm.pdf'
 }
 
@@ -53,24 +54,6 @@ configurations {
         }
     }
     doc
-    allJavadoc {
-        extendsFrom doc
-        canBeConsumed = false
-        canBeResolved = true
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, DocsType.JAVADOC))
-        }
-    }
-    allGroovydoc {
-        extendsFrom doc
-        canBeConsumed = false
-        canBeResolved = true
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, "groovydoc"))
-        }
-    }
     allAsciidoc {
         extendsFrom baseProjects
         canBeConsumed = false
@@ -90,6 +73,12 @@ configurations {
             attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, Usage.JAVA_RUNTIME))
         }
     }
+    allSources {
+        extendsFrom baseProjects
+    }
+    allSourcesRuntimeClasspath {
+        extendsFrom baseProjects
+    }
 }
 
 dependencies {
diff --git a/buildSrc/src/main/groovy/org.apache.groovy-all.gradle b/buildSrc/src/main/groovy/org.apache.groovy-doc-aggregator.gradle
similarity index 58%
copy from buildSrc/src/main/groovy/org.apache.groovy-all.gradle
copy to buildSrc/src/main/groovy/org.apache.groovy-doc-aggregator.gradle
index 88e19b6..f23ce4d 100644
--- a/buildSrc/src/main/groovy/org.apache.groovy-all.gradle
+++ b/buildSrc/src/main/groovy/org.apache.groovy-doc-aggregator.gradle
@@ -16,6 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
+import org.apache.groovy.gradle.DocAggregationExtension
 
 /*
     This plugin declares a component type corresponding to the "groovy-all" component.
@@ -25,34 +26,18 @@
 
     It also aggregates docs and sources but does NOT provide an "uber" jar.
  */
-import org.apache.groovy.gradle.GroovyLibraryExtension
-import org.apache.groovy.gradle.GroovyAllExtension
-
 plugins {
     id 'org.apache.groovy-common'
-    id 'org.apache.groovy-platform'
     id 'org.apache.groovy-documented'
 }
 
-extensions.create("groovyAll", GroovyAllExtension)
-
-javaPlatform {
-    allowDependencies()
-}
-
-def projectsIncludedInGroovyAll = rootProject.allprojects.findAll {
-    if (it.pluginManager.hasPlugin('org.apache.groovy-base')) {
-        return it.extensions.getByType(GroovyLibraryExtension).includeInGroovyAll.get()
-    }
-    return false
-}
+def docAggregation = extensions.create('docAggregation', DocAggregationExtension)
 
 configurations {
     allSources {
         canBeConsumed = false
         canBeResolved = true
         transitive = false
-        extendsFrom runtime
         attributes {
             attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
             attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
@@ -63,7 +48,6 @@ configurations {
     allSourcesRuntimeClasspath {
         canBeConsumed = false
         canBeResolved = true
-        extendsFrom runtime
         attributes {
             attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.LIBRARY))
             attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
@@ -73,9 +57,6 @@ configurations {
 }
 
 dependencies {
-    projectsIncludedInGroovyAll.each {
-        api(it)
-    }
     attributesSchema {
         attribute(Usage.USAGE_ATTRIBUTE) {
             compatibilityRules.add(JavadocClasspathCompatibilityRule)
@@ -92,7 +73,7 @@ def javadocAll = tasks.register("javadocAll", Javadoc) {
     destinationDir = file("$buildDir/alljavadoc")
     source configurations.allSources
     classpath = configurations.allSourcesRuntimeClasspath
-    groovyAll.excludedFromJavadocs.each {
+    docAggregation.excludedFromJavadocs.each {
         exclude it
     }
 }
@@ -113,60 +94,6 @@ def groovydocAllJar = tasks.register("groovydocAllJar", Jar) {
     archiveClassifier = 'groovydoc'
 }
 
-def createDocumentationPublication = { String name, TaskProvider artifact ->
-    def outgoing = configurations.create("${name}Elements") {
-        it.canBeConsumed = true
-        it.canBeResolved = false
-        it.attributes {
-            it.attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            it.attribute(Bundling.BUNDLING_ATTRIBUTE, objects.named(Bundling, Bundling.EXTERNAL))
-            it.attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, name))
-            it.attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage, Usage.JAVA_RUNTIME))
-        }
-        it.outgoing {
-            it.artifact artifact
-        }
-    }
-    components.javaPlatform {
-        addVariantsFromConfiguration(outgoing) {
-            mapToOptional()
-        }
-    }
-}
-
-createDocumentationPublication('sources', sourcesAllJar)
-createDocumentationPublication('javadoc', javadocAllJar)
-createDocumentationPublication('groovydoc', groovydocAllJar)
-
-configurations {
-    allJavadoc {
-        canBeConsumed = true
-        canBeResolved = false
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, DocsType.JAVADOC))
-        }
-        outgoing {
-            artifacts {
-                artifact javadocAll
-            }
-        }
-    }
-    allGroovydoc {
-        canBeConsumed = true
-        canBeResolved = false
-        attributes {
-            attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category, Category.DOCUMENTATION))
-            attribute(DocsType.DOCS_TYPE_ATTRIBUTE, objects.named(DocsType, "groovydoc"))
-        }
-        outgoing {
-            artifacts {
-                artifact groovydocAll
-            }
-        }
-    }
-}
-
 class JavadocClasspathCompatibilityRule implements AttributeCompatibilityRule<Usage> {
     @Override
     void execute(CompatibilityCheckDetails<Usage> details) {
diff --git a/buildSrc/src/main/groovy/org.apache.groovy-documented.gradle b/buildSrc/src/main/groovy/org.apache.groovy-documented.gradle
index e772358..c84ca3f 100644
--- a/buildSrc/src/main/groovy/org.apache.groovy-documented.gradle
+++ b/buildSrc/src/main/groovy/org.apache.groovy-documented.gradle
@@ -66,7 +66,9 @@ tasks.withType(Javadoc).configureEach {
 }
 
 tasks.withType(Groovydoc).configureEach {
-    source = sourceSets.main.allSource
+    if (sourceSets.findByName('main')) {
+        source = sourceSets.main.allSource
+    }
     groovyClasspath = configurations.groovydocClasspath
     use = true
     windowTitle = "Groovy ${versions.groovy}"
diff --git a/buildSrc/src/main/groovy/org/apache/groovy/gradle/GroovyAllExtension.groovy b/buildSrc/src/main/groovy/org/apache/groovy/gradle/DocAggregationExtension.groovy
similarity index 97%
rename from buildSrc/src/main/groovy/org/apache/groovy/gradle/GroovyAllExtension.groovy
rename to buildSrc/src/main/groovy/org/apache/groovy/gradle/DocAggregationExtension.groovy
index 8229248..7b50ee3 100644
--- a/buildSrc/src/main/groovy/org/apache/groovy/gradle/GroovyAllExtension.groovy
+++ b/buildSrc/src/main/groovy/org/apache/groovy/gradle/DocAggregationExtension.groovy
@@ -21,7 +21,7 @@ package org.apache.groovy.gradle
 import groovy.transform.CompileStatic
 
 @CompileStatic
-class GroovyAllExtension {
+class DocAggregationExtension {
     final List<String> excludedFromJavadocs = []
 
     void excludeFromJavadoc(String... items) {
diff --git a/subprojects/groovy-all/build.gradle b/subprojects/groovy-all/build.gradle
index 16802c0..e322f30 100644
--- a/subprojects/groovy-all/build.gradle
+++ b/subprojects/groovy-all/build.gradle
@@ -21,7 +21,7 @@ plugins {
     id 'org.apache.groovy-all'
 }
 
-groovyAll {
+docAggregation {
     excludeFromJavadoc '**/*.html',
             '**/*.groovy',
             '**/GroovyRecognizer.java' // generated file
diff --git a/subprojects/groovy-binary/build.gradle b/subprojects/groovy-binary/build.gradle
index 5005f80..b757209 100644
--- a/subprojects/groovy-binary/build.gradle
+++ b/subprojects/groovy-binary/build.gradle
@@ -24,6 +24,12 @@ plugins {
     id 'org.apache.groovy-asciidoctor'
 }
 
+docAggregation {
+    excludeFromJavadoc '**/*.html',
+            '**/*.groovy',
+            '**/GroovyRecognizer.java' // generated file
+}
+
 distribution {
     docs ':', 'org.codehaus.groovy.runtime.DefaultGroovyMethods',
             'org.codehaus.groovy.runtime.DefaultGroovyStaticMethods',
@@ -109,10 +115,10 @@ distribution {
 
     docSpec = copySpec {
         into('html/api') {
-            from configurations.allJavadoc
+            from tasks.named('javadocAll')
         }
         into('html/gapi') {
-            from configurations.allGroovydoc
+            from tasks.named('groovydocAll')
         }
         into('html/documentation') {
             from configurations.allAsciidoc