Fix remaining Javadoc warnings
This fixes the last of our Javadoc warnings without creating a circular dependency between ":com.ibm.wala.cast:javadoc" and ":com.ibm.wala.cast.js:javadoc". Fixes #4, wherein more details about this tricky dependency challenge can be found.
This commit is contained in:
parent
2a75244914
commit
48ffce525c
|
@ -0,0 +1,28 @@
|
|||
import org.gradle.api.tasks.*
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// create a Javadoc-style "package-list" file
|
||||
//
|
||||
|
||||
class CreatePackageList extends org.gradle.api.DefaultTask {
|
||||
|
||||
@Input Object sourceSet
|
||||
@OutputFile File packageList = new File("$temporaryDir/package-list")
|
||||
|
||||
@TaskAction
|
||||
def create() {
|
||||
sourceSet.sourceCollections.collect { collection ->
|
||||
def sourceRoot = collection.tree.dir.toPath()
|
||||
collection.collect { source ->
|
||||
def javaSourceFilePath = source.toPath()
|
||||
def parentPath = javaSourceFilePath.parent
|
||||
def relativePath = sourceRoot.relativize(parentPath)
|
||||
relativePath.toString().replace(File.separator, '.')
|
||||
}
|
||||
}.flatten().sort().unique().each {
|
||||
packageList << "$it\n"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -14,6 +14,10 @@ dependencies {
|
|||
)
|
||||
}
|
||||
|
||||
task createPackageList(type: CreatePackageList) {
|
||||
sourceSet sourceSets.main.java
|
||||
}
|
||||
|
||||
javadoc {
|
||||
def rhino = project(':com.ibm.wala.cast.js.rhino').compileJava
|
||||
dependsOn rhino
|
||||
|
|
|
@ -16,16 +16,16 @@ dependencies {
|
|||
|
||||
javadoc {
|
||||
def js = ':com.ibm.wala.cast.js'
|
||||
evaluationDependsOn(js)
|
||||
|
||||
dependsOn "$js:compileJava"
|
||||
js = project(js)
|
||||
doFirst {
|
||||
classpath += files project(js).compileJava
|
||||
classpath += files js.compileJava
|
||||
}
|
||||
/*
|
||||
// creates circular dependency
|
||||
def jsDoc = project(js).javadoc
|
||||
dependsOn jsDoc
|
||||
options.links jsDoc.outputDirectory.path
|
||||
*/
|
||||
|
||||
dependsOn js.createPackageList
|
||||
options.linksOffline js.javadoc.outputDirectory.path, files(js.createPackageList).singleFile.parent
|
||||
}
|
||||
|
||||
def currentJavaHome = org.gradle.internal.jvm.Jvm.current().javaHome
|
||||
|
|
|
@ -10,3 +10,12 @@ dependencies {
|
|||
project(':com.ibm.wala.util'),
|
||||
)
|
||||
}
|
||||
|
||||
task createPackageList(type: CreatePackageList) {
|
||||
sourceSet sourceSets.main.java
|
||||
}
|
||||
|
||||
javadoc {
|
||||
dependsOn createPackageList
|
||||
options.linksOffline outputDirectory.path, files(createPackageList).singleFile.parent
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue