From 0911202260a9c12898078eea21692f00b85ba92d Mon Sep 17 00:00:00 2001 From: NotMyFault Date: Thu, 2 May 2019 19:28:09 +0200 Subject: [PATCH] Generate javadocs --- .gitignore | 3 ++- build.gradle | 50 +++++++++++++++++++++++++------------------------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/.gitignore b/.gitignore index f632b0d1f..18c977f27 100644 --- a/.gitignore +++ b/.gitignore @@ -22,4 +22,5 @@ lib/ *.bat worldedit-bukkit/src/main/java/ignore/* todo.txt -mvn/* \ No newline at end of file +mvn/* +docs/ \ No newline at end of file diff --git a/build.gradle b/build.gradle index adbe1f09e..2d42f2d6a 100644 --- a/build.gradle +++ b/build.gradle @@ -28,8 +28,6 @@ plugins { } apply plugin: 'java' -clean { delete "target" } - def splashFile = new File('splash.txt') if (splashFile.exists()) { @@ -58,23 +56,24 @@ ext { } } -if ( project.hasProperty("lzNoVersion") ) { // gradle build -PlzNoVersion - version = "unknown" -} else { - version = String.format("%s.%s", rootVersion, buildNumber) -} +version = String.format("%s.%s", rootVersion, buildNumber) + description = rootProject.name subprojects { apply plugin: 'java' apply plugin: 'maven' apply plugin: 'com.github.johnrengelman.shadow' - // Enable this requires putting license header files in many, many FAWE files + //Enable this requires putting license header files in many, many FAWE files //apply plugin: 'net.minecrell.licenser' sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 + clean.doFirst { + delete "../target" + } + compileJava { options.compilerArgs += ["-parameters"] } repositories { @@ -97,23 +96,6 @@ subprojects { maven {url "http://ci.emc.gs/nexus/content/groups/aikar/" } } - if (JavaVersion.current().isJava8Compatible()) { - // Java 8 turns on doclint which we fail - tasks.withType(Javadoc) { - options.addStringOption('Xdoclint:none', '-quiet') - } - } - - task javadocJar(type: Jar, dependsOn: javadoc) { - classifier = 'javadoc' - from javadoc.destinationDir - } - - artifacts { - archives jar - archives javadocJar - } - if (!(name.equals('worldedit-forge') || name.equals('worldedit-sponge'))) { task sourcesJar(type: Jar, dependsOn: classes) { classifier = 'sources' @@ -146,3 +128,21 @@ subprojects { // include '**/*.java' //} } +task aggregatedJavadocs(type: Javadoc, description: 'Generate javadocs from all child projects as if it was a single project', group: 'Documentation') { + destinationDir = file("./docs/javadoc") + title = "$project.name $version API" + options.author true + options.links 'http://docs.spring.io/spring/docs/4.3.x/javadoc-api/', 'http://docs.oracle.com/javase/8/docs/api/', 'http://docs.spring.io/spring-ws/docs/2.3.0.RELEASE/api/', 'http://docs.spring.io/spring-security/site/docs/4.0.4.RELEASE/apidocs/' + options.addStringOption('Xdoclint:none', '-quiet') + + delete "./docs" + + subprojects.each { proj -> + proj.tasks.withType(Javadoc).each { javadocTask -> + source += javadocTask.source + classpath += javadocTask.classpath + excludes += javadocTask.excludes + includes += javadocTask.includes + } + } +}