forked from StarOpenSource/Engine
Fix javadocAll task
This commit is contained in:
parent
bfbe0b0053
commit
19a87aee94
1 changed files with 40 additions and 7 deletions
45
build.gradle
45
build.gradle
|
@ -26,11 +26,7 @@ plugins {
|
|||
|
||||
// Register task for Javadoc generation for all subsystems
|
||||
tasks.register("javadocAll", Javadoc) {
|
||||
// Task metadata
|
||||
setDescription("Generates Javadoc API documentation for all subprojects.")
|
||||
setGroup("documentation")
|
||||
dependsOn(delombok) // Make sure the source is delomboked first
|
||||
|
||||
// Subprojects to document
|
||||
def subprojects = [
|
||||
":base",
|
||||
":graphics",
|
||||
|
@ -39,7 +35,16 @@ tasks.register("javadocAll", Javadoc) {
|
|||
":slf4j-compat",
|
||||
]
|
||||
|
||||
setSource(subprojects.collect({ project(it).sourceSets.main.allJava }))
|
||||
// Task metadata
|
||||
setDescription("Generates Javadoc API documentation for all subprojects.")
|
||||
setGroup("documentation")
|
||||
|
||||
// Make sure the source is delomboked first
|
||||
for (String subproject : subprojects)
|
||||
dependsOn(project(subproject).delombok)
|
||||
|
||||
// Set output directory, source and classpath
|
||||
setSource(subprojects.collect({ project(it).projectDir.getPath() + "/build/generated/sources/delombok/java/main/" }))
|
||||
setClasspath(files(subprojects.collect({ project(it).sourceSets.main.compileClasspath })))
|
||||
setDestinationDir(file("build/docs/javadoc"))
|
||||
|
||||
|
@ -54,6 +59,34 @@ tasks.register("javadocAll", Javadoc) {
|
|||
"-Duser.language=en_US" // See above
|
||||
])
|
||||
}
|
||||
|
||||
// Fix module collisions
|
||||
doFirst {
|
||||
logger.log(LogLevel.WARN, "If this task fails, make sure to reset all module-info.java files using git or you may have issues.")
|
||||
|
||||
for (String subproject : subprojects) {
|
||||
File source = new File(project(subproject).projectDir.getPath() + "/src/main/java/module-info.java");
|
||||
File target = new File(project(subproject).projectDir.getPath() + "/src/main/module-info.java")
|
||||
|
||||
if (source.exists()) {
|
||||
target.delete()
|
||||
source.renameTo(target)
|
||||
}
|
||||
}
|
||||
}
|
||||
doLast {
|
||||
for (String subproject : subprojects) {
|
||||
File source = new File(project(subproject).projectDir.getPath() + "/src/main/module-info.java");
|
||||
File target = new File(project(subproject).projectDir.getPath() + "/src/main/java/module-info.java")
|
||||
|
||||
if (source.exists()) {
|
||||
target.delete()
|
||||
source.renameTo(target)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Force doLast block to execute even if task failed
|
||||
}
|
||||
|
||||
// Set group, version and repositories for all projects
|
||||
|
|
Loading…
Reference in a new issue