-
Notifications
You must be signed in to change notification settings - Fork 445
Description
As mentioned in #1296, the API Docs for the package picocli.groovy are not up-to-date: The Groovy classes were previously in the main picocli jar, now they are in a separate picocli-groovy jar. These javadoc pages are still there from when these classes were in the picocli jar.
This task is to publish Javadoc for the other jars, not just for the picocli jar, but for all of these:
picoclipicocli-codegenpicocli-groovypicocli-shell-jline2picocli-shell-jline3picocli-spring-boot-starter
One idea to deal with this is to generate javadoc for each module and copy them to subdirectories of ${PROJECT-DIR}/build/docs/apidoc in the copyDocs task in build.gradle. This would leave them as independent sets of documents, so we need to link to their top-level pages from the user manual and project README.
An alternative idea is to treat the picocli modules like Java 9 Modules and use the Java 9+ javadoc tool to generate a single interlinked set of api documents for all picocli modules.
The latter idea would introduce a dependency on Java 9 or later. Currently only Java 8 is required to build picocli. I am not sure that I want to require Java 9+ to build the project. It would be good to explore if building a single integrated set of javadoc documents can be done optionally only if the current Java version is 9 or higher.
http://tutorials.jenkov.com/java/modules.html#migrating-to-java-9
https://github.com/tfesenko/Java-Modules-JPMS-CheatSheet
https://www.oracle.com/corporate/features/understanding-java-9-modules.html