すみむらの独り言

思ったことをぶつぶつ呟いていくブログ

GradleのMulti Projectでjavadocをまとめる

GradleのMulti Projectでjavadocをまとめる

とりあえず調べたものをまとめておく。
gradleマルチプロジェクトのサブプロジェクト全部ひっくるめたjavadocを生成する - もぐてっく

GradleのマルチプロジェクトでJavaDocを一箇所にまとめて出力する - 試したこととか困ったこととか

Gradle で Javadoc API Document を出力する - まくまくGradleノート

どれも決め手に掛ける。

これならいけそうで、実際いけた。
discuss.gradle.org

task aggregatedJavadocs(type: Javadoc, description: 'Generate javadocs from all child projects as if it was a single project', group: 'Documentation') {
	destinationDir = file("$buildDir/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'
	
	subprojects.each { proj ->
		proj.tasks.withType(Javadoc).each { javadocTask ->
			source += javadocTask.source
			classpath += javadocTask.classpath
			excludes += javadocTask.excludes
			includes += javadocTask.includes
		}
	}
}