apache / apache/maven-javadoc-plugin

[MJAVADOC-697] Allowing to register alternative Javadoc implementation

Open
#1,072 0 comments 0 reactions 0 assignees View on GitHub
enhancement priority:major
Dominant language
Java
Stars
107
Forks
116
Avg merge
1d 10h
Merged PRs (30d)
16

Description

**[Toni Epple](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=dukescript)** opened **[MJAVADOC-697](https://issues.apache.org/jira/browse/MJAVADOC-697?redirect=false)** and commented

The Maven compiler plugin allows [different implementations of compilers](https://maven.apache.org/plugins/maven-compiler-plugin/non-javac-compilers.html) to plug in. One of the very useful ones is the [retrofit compiler for Java](http://frgaal.org/) that allows one to use syntax of JDK-16 while running on old JDKs.

The compiler works fine, however the problem comes when one wants to generate Javadoc. Because the source code is using newer language constructs, classical `javadoc` from old JDKs fails. One either has to generate the Javadoc on a newest JDK (which beats the purpose of retrofit compiler) or give up on Javadoc. Or...

Let's enhance the Maven Javadoc Plugin to support alternative implementations of Javadoc, just like the Maven Compiler Plugin does with compilers!

---

**Affects:** 3.1.1

**Remote Links:**
- [GitHub Pull Request #106
](https://github.com/apache/maven-javadoc-plugin/pull/106)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the Maven Javadoc Plugin and compare its configuration and implementation with the Maven Compiler Plugin's support for alternative compilers, as described in the linked documentation. Done means an alternative Javadoc implementation can be registered and used to generate documentation for sources requiring newer Java syntax.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.