Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Currently it is not explicitly specified in https://maven.apache.org/ref/3.8.4/maven-plugin-api/plugin.html which format the description field on plugin, mojo and parameter level should have.
It partially contains HTML tags (also from converted inline javadoc taglets) which is problematic for https://maven.apache.org/plugins/maven-help-plugin/describe-mojo.html (which expects plain text).
On the other hand, the same plugin descriptor is currently leveraged for goal report which should include all those HTML details from the source comment.
Therefore both goals need to extract metadata from source files differently and report can no longer rely on the previously generated plugin descriptor file.
In addition even the plain text descriptor should contain as many details as possible, i.e. it should be converted javadoc taglets -> html -> plain text to no loose any detail.
Currently the plugin descriptor is written with GeneratorUtils.toText()at https://github.com/apache/maven-plugin-tools/blob/706b1d0b6730d028350f18d8459eee8b123e2f67/maven-plugin-tools-generators/src/main/java/org/apache/maven/tools/plugin/generator/PluginDescriptorGenerator.java#L186 which has the following flaws
- Still emits <a href= links
- Does not resolve all javadoc tags
- Does never emit a proper link for link javadoc taglets
The proposal is that
- goal descriptor generates three different descriptor serializations (based on the same in-memory HTML descriptor):
- one with plain text according to https://maven.apache.org/ref/3.8.4/maven-plugin-api/plugin.html
- one with plain text and additional attributes for helpmojo
- another temporary one to be used from report containing HTML values
- goal helpmojo evaluates the deserialized descriptor from 2 at execution time of the resulting "help" mojo
- goal report evaluates the deserialized enhanced descriptor from 3.
Attachments
Issue Links
- causes
-
MPLUGIN-428 Don't emit warning for missing javadoc URL of primitives
- Closed
-
MPLUGIN-429 Don't emit warning for missing javadoc URI if no javadoc sources are configured
- Closed
- is related to
-
MPLUGIN-443 Javadoc reference containing a link label with spaces are not detected
- Closed
-
MPLUGIN-444 JavadocLinkGenerator.createLink: Support nested binary class names
- Closed
-
MPLUGIN-298 The plugin descriptor generated by plugin:descriptor does not consider @see javadoc taglets
- Closed
-
MPLUGIN-9 Add link to javadoc in configuration description page for user defined types of Mojos.
- Closed
-
MJAVADOC-727 Make methods from JavadocUtil public which deal with retrieving "package-list"/"element-list"
- Open
-
MPLUGIN-481 Provide improved plugin descriptor suitable for IDE integration
- Open
-
MPLUGIN-433 Allow to reference aggregator javadoc from plugin report
- Resolved
-
MPLUGIN-408 simplification in helpmojo build
- Closed
- links to