allprojects { apply plugin: 'java-library' sourceCompatibility = 1.8 targetCompatibility = 1.8 version 'v0.13.0' repositories { jcenter() } } subprojects { task sourcesJar(type: Jar, dependsOn: classes) { classifier = 'sources' from sourceSets.main.allSource } tasks.withType(Test) { testLogging { events "skipped", "failed" showStandardStreams = true exceptionFormat = 'full' } } artifacts { archives sourcesJar } } // https://discuss.gradle.org/t/best-approach-gradle-multi-module-project-generate-just-one-global-javadoc/18657/21 task aggregatedJavadocs(type: Javadoc, group: 'Documentation') { destinationDir = file("$buildDir/docs/javadoc") title = "$project.name $version" // options.memberLevel = JavadocMemberLevel.PRIVATE options.links 'https://docs.oracle.com/javase/7/docs/api/' subprojects.each { project -> project.tasks.withType(Javadoc).each { javadocTask -> source += javadocTask.source classpath += javadocTask.classpath excludes += javadocTask.excludes includes += javadocTask.includes } } }