public abstract class AbstractJavadocMojo
extends org.apache.maven.plugin.AbstractMojo
Modifier and Type | Field and Description |
---|---|
private java.util.List<AdditionalDependency> |
additionalDependencies
Capability to add additional dependencies to the javadoc classpath.
|
private java.lang.String |
additionalJOption
Set an additional Javadoc option(s) (i.e.
|
private java.lang.String[] |
additionalJOptions
Set additional JVM options for the execution of the javadoc command via the '-J' option to javadoc.
|
private java.lang.String[] |
additionalOptions
Set an additional option(s) on the command line.
|
private boolean |
applyJavadocSecurityFix
To apply the security fix on generated javadoc see http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1571
|
private org.codehaus.plexus.archiver.manager.ArchiverManager |
archiverManager
Archiver manager
|
protected static java.lang.String |
ARGFILE_FILE_NAME
The
argfile file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files |
private org.apache.maven.artifact.handler.manager.ArtifactHandlerManager |
artifactHandlerManager |
private org.apache.maven.shared.artifact.resolve.ArtifactResolver |
artifactResolver |
private boolean |
author
Specifies whether or not the author text is included in the generated Javadocs.
|
private java.lang.String |
bootclasspath
Specifies the paths where the boot classes reside.
|
private BootclasspathArtifact[] |
bootclasspathArtifacts
Specifies the artifacts where the boot classes reside.
|
private java.lang.String |
bottom
Specifies the text to be placed at the bottom of each output file.
If you want to use html you have to put it in a CDATA section, eg. |
private boolean |
breakiterator
Uses the sentence break iterator to determine the end of the first sentence.
|
private java.lang.String |
charset
Specifies the HTML character set for this document.
|
private boolean |
debug
Set this to
true to debug the Javadoc plugin. |
protected static java.lang.String |
DEBUG_JAVADOC_SCRIPT_NAME
The Javadoc script file name when
debug parameter is on, i.e. |
private static java.lang.String |
DEFAULT_CSS_NAME
Default css file name
|
static java.util.Properties |
DEFAULT_JAVA_API_LINKS
The default Javadoc API urls according the
Sun API
Specifications:
|
private java.util.List<JavadocBundle> |
dependencyJavadocBundles
Transient variable to allow lazy-resolution of javadoc bundles from dependencies, so they can
be used at various points in the javadoc generation process.
|
private org.apache.maven.shared.dependencies.resolve.DependencyResolver |
dependencyResolver |
private java.util.List<java.lang.String> |
dependencySourceExcludes
List of excluded dependency-source patterns.
|
private java.util.List<java.lang.String> |
dependencySourceIncludes
List of included dependency-source patterns.
|
private boolean |
detectJavaApiLink
Detect the Java API link for the current build, i.e.
|
private boolean |
detectLinks
Detect the Javadoc links for all dependencies defined in the project.
|
private boolean |
detectOfflineLinks
Detect the links for all modules defined in the project.
|
private java.lang.String |
docencoding
Specifies the encoding of the generated HTML files.
|
private boolean |
docfilessubdirs
Enables deep copying of the
**/doc-files directories and the specifc resources
directory from the javadocDirectory directory (for instance,
src/main/javadoc/com/mycompany/myapp/doc-files and src/main/javadoc/resources ). |
private java.lang.String |
doclet
Specifies the class file that starts the doclet used in generating the documentation.
|
private DocletArtifact |
docletArtifact
Specifies the artifact containing the doclet starting class file (specified with the
-doclet
option). |
private DocletArtifact[] |
docletArtifacts
Specifies multiple artifacts containing the path for the doclet starting class file (specified with the
-doclet option). |
private java.lang.String |
docletPath
Specifies the path to the doclet starting class file (specified with the
-doclet option) and
any jar files it depends on. |
private java.lang.String |
doclint
Specifies specific checks to be performed on Javadoc comments.
|
private java.lang.String |
doctitle
Specifies the title to be placed near the top of the overview summary file.
|
private java.lang.String |
encoding
Specifies the encoding name of the source files.
|
private java.lang.String |
excludedocfilessubdir
Excludes any "doc-files" subdirectories with the given names.
|
private java.lang.String |
excludePackageNames
Unconditionally excludes the specified packages and their subpackages from the list formed by
-subpackages . |
private java.lang.String |
extdirs
Specifies the directories where extension classes reside.
|
protected boolean |
failOnError
Specifies if the build will fail if there are errors during javadoc execution or not.
|
protected boolean |
failOnWarnings
Specifies if the build will fail if there are warning during javadoc execution or not.
|
protected static java.lang.String |
FILES_FILE_NAME
The
files file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files |
private java.lang.String |
footer
Specifies the footer text to be placed at the bottom of each output file.
|
private Group[] |
groups
Separates packages on the overview page into whatever groups you specify, one group per table.
|
private java.lang.String |
header
Specifies the header text to be placed at the top of each output file.
|
private java.lang.String |
helpfile
Specifies the path of an alternate help file path\filename that the HELP link in the top and bottom
navigation bars link to.
|
private boolean |
includeDependencySources
Whether dependency -sources jars should be resolved and included as source paths for javadoc generation.
|
private boolean |
includeTransitiveDependencySources
Whether to include transitive dependencies in the list of dependency -sources jars to include
in this javadoc run.
|
private boolean |
isOffline
Specify if the Javadoc should operate in offline mode.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
JAVA_VERSION |
private java.util.Properties |
javaApiLinks
Use this parameter only if the Sun Javadoc API
urls have been changed or to use custom urls for Javadoc API url.
|
static java.lang.String |
JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
Classifier used in the name of the javadoc-options XML file, and in the resources bundle
artifact that gets attached to the project.
|
private java.io.File |
javadocDirectory
Specifies the Javadoc resources directory to be included in the Javadoc (i.e.
|
private java.lang.String |
javadocExecutable
Sets the absolute path of the Javadoc Tool executable to use.
|
private java.io.File |
javadocOptionsDir
Directory into which assembled
JavadocOptions instances will be written before they
are added to javadoc resources bundles. |
private org.codehaus.plexus.languages.java.version.JavaVersion |
javadocRuntimeVersion
Version of the Javadoc Tool executable to use.
|
private java.lang.String |
javadocVersion
Version of the Javadoc Tool executable to use, ex.
|
private java.util.Map<java.lang.String,java.lang.String> |
jdkToolchain
Specify the requirements for this jdk toolchain.
|
private boolean |
keywords
Adds HTML meta keyword tags to the generated file for each class.
|
protected java.util.ArrayList<java.lang.String> |
links
Creates links to existing javadoc-generated documentation of external referenced classes.
|
private boolean |
linksource
Creates an HTML version of each source file (with line numbers) and adds links to them from the standard
HTML documentation.
|
private java.lang.String |
locale
Specifies the locale that javadoc uses when generating documentation.
|
private org.apache.maven.artifact.repository.ArtifactRepository |
localRepository
The local repository where the artifacts are located.
|
private org.apache.maven.project.ProjectBuilder |
mavenProjectBuilder
Project builder
|
private java.lang.String |
maxmemory
Specifies the maximum Java heap size to be used when launching the Javadoc tool.
|
private java.lang.String |
minmemory
Specifies the minimum Java heap size to be used when launching the Javadoc tool.
|
private org.apache.maven.plugin.MojoExecution |
mojo |
private boolean |
nocomment
Suppress the entire comment body, including the main description and all tags, generating only declarations.
|
private boolean |
nodeprecated
Prevents the generation of any deprecated API at all in the documentation.
|
private boolean |
nodeprecatedlist
Prevents the generation of the file containing the list of deprecated APIs (deprecated-list.html) and the
link in the navigation bar to that page.
|
private boolean |
nohelp
Omits the HELP link in the navigation bars at the top and bottom of each page of output.
|
private boolean |
noindex
Omits the index from the generated docs.
|
private boolean |
nonavbar
Omits the navigation bar from the generated docs.
|
private boolean |
nooverview
Omits the entire overview page from the generated docs.
|
private java.lang.String |
noqualifier
Omits qualifying package name from ahead of class names in output.
|
private boolean |
nosince
Omits from the generated docs the "Since" sections associated with the since tags.
|
private boolean |
notimestamp
Suppresses the timestamp, which is hidden in an HTML comment in the generated HTML near the top of each page.
|
private boolean |
notree
Omits the class/interface hierarchy pages from the generated docs.
|
private OfflineLink[] |
offlineLinks
This option is a variation of
-link ; they both create links to javadoc-generated documentation
for external referenced classes. |
private boolean |
old
This option creates documentation with the appearance and functionality of documentation generated by
Javadoc 1.1.
|
protected static java.lang.String |
OPTIONS_FILE_NAME
The
options file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files |
protected java.io.File |
outputDirectory
Specifies the destination directory where javadoc saves the generated HTML files.
|
private java.io.File |
overview
Specifies that javadoc should retrieve the text for the overview documentation from the "source" file
specified by path/filename and place it on the Overview page (overview-summary.html).
|
protected static java.lang.String |
PACKAGES_FILE_NAME
The
packages file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files |
private java.lang.String |
packagesheader
Specify the text for upper left frame.
|
protected org.apache.maven.project.MavenProject |
project
The Maven Project Object
|
private boolean |
quiet
Shuts off non-error and non-warning messages, leaving only the warnings and errors appear, making them
easier to view.
|
private java.util.List<org.apache.maven.project.MavenProject> |
reactorProjects
The projects in the reactor for aggregation report.
|
private static java.lang.String |
RESOURCE_CSS_DIR
Default location for css
|
private static java.lang.String |
RESOURCE_DIR
The current class directory
|
private ResourceResolver |
resourceResolver |
private ResourcesArtifact[] |
resourcesArtifacts
A list of artifacts containing resources which should be copied into the
Javadoc output directory (like stylesheets, icons, etc.).
|
private boolean |
serialwarn
Generates compile-time warnings for missing serial tags.
|
protected org.apache.maven.execution.MavenSession |
session
The current build session instance.
|
private org.apache.maven.settings.Settings |
settings
The Maven Settings.
|
private java.lang.String |
show
Specifies the access level for classes and members to show in the Javadocs.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
SINCE_JAVADOC_1_4
For Javadoc options appears since Java 1.4.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
SINCE_JAVADOC_1_4_2
For Javadoc options appears since Java 1.4.2.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
SINCE_JAVADOC_1_5
For Javadoc options appears since Java 5.0.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
SINCE_JAVADOC_1_6
For Javadoc options appears since Java 6.0.
|
private static org.codehaus.plexus.languages.java.version.JavaVersion |
SINCE_JAVADOC_1_8
For Javadoc options appears since Java 8.0.
|
protected boolean |
skip
Specifies whether the Javadoc generation should be skipped.
|
private java.lang.String |
source
Necessary to enable javadoc to handle assertions introduced in J2SE v 1.4 source code or generics introduced in
J2SE v5.
|
private java.io.File |
sourceDependencyCacheDir
Directory where unpacked project sources / test-sources should be cached.
|
private java.util.List<java.lang.String> |
sourceFileExcludes
exclude filters on the source files.
|
private java.util.List<java.lang.String> |
sourceFileIncludes
Include filters on the source files.
|
private java.lang.String |
sourcepath
Specifies the source paths where the subpackages are located.
|
private int |
sourcetab
Specify the number of spaces each tab takes up in the source.
|
private boolean |
splitindex
Splits the index file into multiple files, alphabetically, one file per letter, plus a file for any index
entries that start with non-alphabetical characters.
|
private java.lang.String |
stylesheet
Specifies whether the stylesheet to be used is the
maven 's javadoc stylesheet or
java 's default stylesheet when a stylesheetfile parameter is not specified. |
private java.lang.String |
stylesheetfile
Specifies the path of an alternate HTML stylesheet file.
|
private java.lang.String |
subpackages
Specifies the package directory where javadoc will be executed.
|
private java.lang.String |
taglet
Specifies the class file that starts the taglet used in generating the documentation for that tag.
|
private TagletArtifact |
tagletArtifact
Specifies the Taglet artifact containing the taglet class files (.class).
|
private TagletArtifact[] |
tagletArtifacts
Specifies several Taglet artifacts containing the taglet class files (.class).
|
private java.lang.String |
tagletpath
Specifies the search paths for finding taglet class files (.class).
|
private Taglet[] |
taglets
Enables the Javadoc tool to interpret multiple taglets.
|
private Tag[] |
tags
Enables the Javadoc tool to interpret a simple, one-argument custom block tag tagname in doc comments.
|
static java.lang.String |
TEST_JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
Classifier used in the name of the javadoc-options XML file, and in the resources bundle
artifact that gets attached to the project.
|
private org.apache.maven.toolchain.ToolchainManager |
toolchainManager |
private java.lang.String |
top
Specifies the top text to be placed at the top of each output file.
|
private boolean |
use
Includes one "Use" page for each documented class and package.
|
protected boolean |
useStandardDocletOptions
Specifies to use the
options provided by the Standard Doclet for a custom doclet.
|
private boolean |
validateLinks
Flag controlling content validation of
package-list resources. |
private boolean |
verbose
Provides more detailed messages while javadoc is running.
|
private boolean |
version
Includes the version text in the generated docs.
|
private java.lang.String |
windowtitle
Specifies the title to be placed in the HTML title tag.
|
Constructor and Description |
---|
AbstractJavadocMojo() |
Modifier and Type | Method and Description |
---|---|
private void |
addArgIf(java.util.List<java.lang.String> arguments,
boolean b,
java.lang.String value)
Convenience method to add an argument to the
command line
conditionally based on the given flag. |
private void |
addArgIf(java.util.List<java.lang.String> arguments,
boolean b,
java.lang.String value,
org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
Convenience method to add an argument to the
command line
regarding the requested Java version. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value)
Convenience method to add an argument to the
command line
if the the value is not null or empty. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value,
boolean repeatKey)
Convenience method to add an argument to the
command line
if the the value is not null or empty. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value,
boolean repeatKey,
boolean splitValue)
Convenience method to add an argument to the
command line
if the the value is not null or empty. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value,
boolean repeatKey,
boolean splitValue,
org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
Convenience method to add an argument to the
command line
if the the value is not null or empty. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value,
org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
Convenience method to add an argument to the
command line
regarding the requested Java version. |
private void |
addArgIfNotEmpty(java.util.List<java.lang.String> arguments,
java.lang.String key,
java.lang.String value,
org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion,
boolean repeatKey)
Convenience method to add an argument to the
command line
regarding the requested Java version. |
private void |
addCommandLineArgFile(org.codehaus.plexus.util.cli.Commandline cmd,
java.io.File javadocOutputDirectory,
java.util.List<java.lang.String> files)
Generate a file called
argfile (or files , depending the JDK) to hold files and add
the @argfile (or @file , depending the JDK) in the command line. |
private void |
addCommandLineOptions(org.codehaus.plexus.util.cli.Commandline cmd,
java.util.List<java.lang.String> arguments,
java.io.File javadocOutputDirectory)
Generate an
options file for all options and arguments and add the @options in the
command line. |
private void |
addCommandLinePackages(org.codehaus.plexus.util.cli.Commandline cmd,
java.io.File javadocOutputDirectory,
java.util.List<java.lang.String> packageNames)
Generate a file called
packages to hold all package names and add the @packages in
the command line. |
private void |
addGroups(java.util.List<java.lang.String> arguments)
Add
groups parameter to arguments. |
private void |
addJavadocOptions(java.io.File javadocOutputDirectory,
java.util.List<java.lang.String> arguments,
java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> allSourcePaths)
Add Standard Javadoc Options.
|
private void |
addLinkArguments(java.util.List<java.lang.String> arguments)
Convenience method to process
links values as individual -link javadoc options. |
private void |
addLinkofflineArguments(java.util.List<java.lang.String> arguments)
Convenience method to process
offlineLinks values as individual -linkoffline
javadoc options. |
private void |
addMemoryArg(org.codehaus.plexus.util.cli.Commandline cmd,
java.lang.String arg,
java.lang.String memory)
Method that adds/sets the java memory parameters in the command line execution.
|
private void |
addProxyArg(org.codehaus.plexus.util.cli.Commandline cmd)
Method that adds/sets the javadoc proxy parameters in the command line execution.
|
private void |
addStandardDocletOptions(java.io.File javadocOutputDirectory,
java.util.List<java.lang.String> arguments)
Add Standard Doclet Options.
|
private void |
addTaglets(java.util.List<java.lang.String> arguments)
Add
taglets parameter to arguments. |
private void |
addTagletsFromTagletArtifacts(java.util.List<java.lang.String> arguments)
Auto-detect taglets class name from
tagletArtifacts and add them to arguments. |
private void |
addTags(java.util.List<java.lang.String> arguments)
Add
tags parameter to arguments. |
protected JavadocOptions |
buildJavadocOptions()
Generate a javadoc-options XML file, for either bundling with a javadoc-resources artifact OR
supplying to a distro module in a includeDependencySources configuration, so the javadoc options
from this execution can be reconstructed and merged in the distro build.
|
protected boolean |
canGenerateReport(java.util.List<java.lang.String> files)
Method that indicates whether the javadoc can be generated or not.
|
private static java.lang.String |
cleanUrl(java.lang.String url) |
protected java.util.Collection<java.lang.String> |
collect(java.util.Collection<java.util.Collection<java.lang.String>> sourcePaths) |
private java.util.Set<BootclasspathArtifact> |
collectBootClasspathArtifacts() |
private java.util.Set<DocletArtifact> |
collectDocletArtifacts() |
private java.util.Set<Group> |
collectGroups() |
private java.util.Set<java.lang.String> |
collectLinks() |
private java.util.Set<OfflineLink> |
collectOfflineLinks() |
private java.util.Set<ResourcesArtifact> |
collectResourcesArtifacts() |
private java.util.Set<TagletArtifact> |
collectTagletArtifacts() |
private java.util.Set<Taglet> |
collectTaglets() |
private java.util.Set<Tag> |
collectTags() |
protected SourceResolverConfig |
configureDependencySourceResolution(SourceResolverConfig config)
Override this method to customize the configuration for resolving dependency sources.
|
private void |
copyAdditionalJavadocResources(java.io.File anOutputDirectory)
Method that copy additional Javadoc resources from given artifacts.
|
private void |
copyAllResources(java.io.File javadocOutputDirectory)
Coppy all resources to the output directory
|
private void |
copyDefaultStylesheet(java.io.File anOutputDirectory)
Copies the
DEFAULT_CSS_NAME css file from the current class
loader to the outputDirectory only if stylesheetfile is empty and
stylesheet is equals to maven . |
private void |
copyJavadocResources(java.io.File anOutputDirectory)
Method that copy all
doc-files directories from javadocDirectory of
the current project or of the projects in the reactor to the outputDirectory . |
private org.apache.maven.artifact.Artifact |
createAndResolveArtifact(JavadocPathArtifact javadocArtifact)
creates an
Artifact representing the configured JavadocPathArtifact and resolves it. |
private org.apache.maven.shared.artifact.filter.resolve.TransformableFilter |
createDependencyArtifactFilter()
Returns a ArtifactFilter that only includes direct dependencies of this project
(verified via groupId and artifactId).
|
(package private) abstract void |
doExecute() |
void |
execute() |
private void |
executeJavadocCommandLine(org.codehaus.plexus.util.cli.Commandline cmd,
java.io.File javadocOutputDirectory)
Execute the Javadoc command line
|
protected void |
executeReport(java.util.Locale unusedLocale)
The package documentation details the
Javadoc Options used by this Plugin.
|
protected void |
failOnError(java.lang.String prefix,
java.lang.Exception e) |
private java.io.File |
findMainDescriptor(java.util.Collection<java.lang.String> roots) |
private int |
fixFrameInjectionBug(java.io.File javadocOutputDirectory,
java.lang.String outputEncoding)
Patches the given Javadoc output directory to work around CVE-2013-1571
(see http://www.kb.cert.org/vuls/id/225657).
|
private java.util.Set<java.lang.String> |
followLinks(java.util.Set<java.lang.String> links)
Follows all of the given links, and returns their last redirect locations.
|
private java.lang.String |
getAccessLevel()
Method to get the access level for the classes and members to be shown in the generated javadoc.
|
private java.util.List<java.lang.String> |
getArtifactsAbsolutePath(JavadocPathArtifact javadocArtifact)
Return the Javadoc artifact path and its transitive dependencies path from the local repository
|
protected java.lang.String |
getAttachmentClassifier()
Override this if you need to provide a bundle attachment classifier, as in the case of test
javadocs.
|
private java.lang.String |
getBootclassPath()
Method to get the path of the bootclass artifacts used in the
-bootclasspath option. |
private java.lang.String |
getBottomText()
Method that sets the bottom text that will be displayed on the bottom of the
javadocs.
|
private java.lang.String |
getCharset() |
private OfflineLink |
getDefaultJavadocApiLink() |
private java.util.List<java.lang.String> |
getDependenciesLinks()
Using Maven, a Javadoc link is given by
${project.url}/apidocs . |
protected org.apache.maven.shared.artifact.filter.resolve.ScopeFilter |
getDependencyScopeFilter() |
protected java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> |
getDependencySourcePaths()
Resolve dependency sources so they can be included directly in the javadoc process.
|
private SourceResolverConfig |
getDependencySourceResolverConfig()
Construct a SourceResolverConfig for resolving dependency sources and resources in a consistent
way, so it can be reused for both source and resource resolution.
|
private java.lang.String |
getDocencoding() |
private java.lang.String |
getDocletPath()
Method to get the path of the doclet artifacts used in the
-docletpath option. |
protected java.lang.String |
getDoclint() |
protected java.lang.String |
getDoctitle() |
private java.lang.String |
getEncoding() |
private java.lang.String[] |
getExcludedPackages()
Method to get the packages specified in the
excludePackageNames parameter. |
private java.lang.String |
getExcludedPackages(java.util.Collection<java.lang.String> sourcePaths)
Method to get the excluded source files from the javadoc and create the argument string
that will be included in the javadoc commandline execution.
|
protected java.util.List<java.lang.String> |
getExecutionProjectSourceRoots(org.apache.maven.project.MavenProject p) |
protected java.util.List<java.lang.String> |
getFiles(java.util.Collection<java.lang.String> sourcePaths)
Method to get the files on the specified source paths
|
private java.util.List<java.lang.String> |
getFilesWithUnnamedPackages(java.util.Collection<java.lang.String> sourcePaths,
java.util.List<java.lang.String> files) |
private java.lang.String |
getFullJavadocGoal()
Get the full javadoc goal.
|
private java.lang.String |
getHelpFile(java.io.File javadocOutputDirectory)
Method to get the help file to be used by the Javadoc Tool.
|
protected java.io.File |
getJavadocDirectory() |
private java.lang.String |
getJavadocExecutable()
Get the path of the Javadoc tool executable depending the user entry or try to find it depending the OS
or the
java.home system property or the JAVA_HOME environment variable. |
private static java.lang.String |
getJavadocLink(org.apache.maven.project.MavenProject p) |
protected java.io.File |
getJavadocOptionsFile()
Construct the output file for the generated javadoc-options XML file, after creating the
javadocOptionsDir if necessary.
|
private java.util.List<OfflineLink> |
getModulesLinks()
Using Maven, a Javadoc link is given by
${project.url}/apidocs . |
protected java.lang.String |
getOutputDirectory() |
protected java.io.File |
getOverview() |
private java.util.List<java.lang.String> |
getPackageNames(java.util.Collection<java.lang.String> sourcePaths,
java.util.List<java.lang.String> files) |
private java.util.List<java.lang.String> |
getPackageNamesOrFilesWithUnnamedPackages(java.util.Collection<java.lang.String> sourcePaths,
java.util.List<java.lang.String> files,
boolean onlyPackageName) |
private java.util.List<java.io.File> |
getPathElements()
Method that gets the classpath and modulepath elements that will be specified in the javadoc
-classpath and --module-path parameter. |
private static org.apache.maven.model.Plugin |
getPlugin(org.apache.maven.project.MavenProject p,
java.lang.String pluginId) |
private static java.lang.String |
getPluginParameter(org.apache.maven.project.MavenProject p,
java.lang.String pluginId,
java.lang.String param) |
protected org.apache.maven.project.MavenProject |
getProject() |
protected java.util.List<java.io.File> |
getProjectBuildOutputDirs(org.apache.maven.project.MavenProject p) |
protected java.util.List<java.lang.String> |
getProjectSourceRoots(org.apache.maven.project.MavenProject p) |
private java.lang.String |
getResource(java.io.File outputFile,
java.lang.String inputResourceName) |
private java.net.URL |
getResource(java.util.List<java.lang.String> classPath,
java.lang.String resource) |
private java.lang.String |
getSourcePath(java.util.Collection<java.lang.String> sourcePaths)
Method to format the specified source paths that will be accepted by the javadoc tool.
|
protected java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> |
getSourcePaths()
Method to get the source paths.
|
private java.lang.String |
getStylesheetFile(java.io.File javadocOutputDirectory)
Method to get the stylesheet path file to be used by the Javadoc Tool.
|
private java.lang.String |
getTagletPath()
Method to get the path of the taglet artifacts used in the
-tagletpath option. |
protected org.apache.maven.toolchain.Toolchain |
getToolchain() |
protected java.lang.String |
getWindowtitle() |
protected boolean |
isAggregator()
Indicates whether this goal is flagged with
@aggregator . |
private boolean |
isDocletArtifactEmpty(DocletArtifact aDocletArtifact)
Verify if a doclet artifact is empty or not
|
private boolean |
isJavaDocVersionAtLeast(org.codehaus.plexus.languages.java.version.JavaVersion requiredVersion)
Is the Javadoc version at least the requested version.
|
private boolean |
isJavadocVMInitError(java.lang.String output)
Check if the Javadoc JVM is correctly started or not.
|
protected boolean |
isTest()
Indicates whether this goal generates documentation for the
Java Test code . |
protected boolean |
isValidJavadocLink(java.lang.String link,
boolean detecting) |
protected void |
logError(java.lang.String message,
java.lang.Throwable t)
Logs an error with throwable content only if in debug.
|
private void |
populateCompileArtifactMap(java.util.Map<java.lang.String,org.apache.maven.artifact.Artifact> compileArtifactMap,
java.util.Collection<org.apache.maven.artifact.Artifact> artifactList)
Method to put the artifacts in the hashmap.
|
org.apache.maven.artifact.Artifact |
resolveDependency(org.apache.maven.model.Dependency dependency) |
private void |
resolveDependencyBundles() |
private void |
setFJavadocVersion(java.io.File jExecutable)
Set a new value for
javadocRuntimeVersion |
private static java.util.List<java.lang.String> |
trimValues(java.util.List<java.lang.String> items) |
private void |
validateJavadocOptions()
Checks for the validity of the Javadoc options used by the user.
|
private void |
validateStandardDocletOptions()
Checks for the validity of the Standard Doclet options.
|
protected void |
verifyRemovedParameter(java.lang.String paramName) |
private void |
verifyReplacedParameter(java.lang.String oldParamName,
java.lang.String newParamNew) |
private void |
writeDebugJavadocScript(java.lang.String cmdLine,
java.io.File javadocOutputDirectory)
Write a debug javadoc script in case of command line error or in debug mode.
|
public static final java.lang.String JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
TEST_JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
,
Constant Field Valuespublic static final java.lang.String TEST_JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER
,
Constant Field Valuespublic static final java.util.Properties DEFAULT_JAVA_API_LINKS
<javaApiLinks> <property> <name>api_1.3</name> <value>http://docs.oracle.com/javase/1.3/docs/api/</value> </property> <property> <name>api_1.4</name> <value>http://docs.oracle.com/javase/1.4.2/docs/api/</value> </property> <property> <name>api_1.5</name> <value>http://docs.oracle.com/javase/1.5.0/docs/api/</value> </property> <property> <name>api_1.6</name> <value>http://docs.oracle.com/javase/6/docs/api/</value> </property> <property> <name>api_1.7</name> <value>http://docs.oracle.com/javase/7/docs/api/</value> </property> <property> <name>api_1.8</name> <value>http://docs.oracle.com/javase/8/docs/api/</value> </property> </javaApiLinks>
protected static final java.lang.String DEBUG_JAVADOC_SCRIPT_NAME
debug
parameter is on, i.e. javadoc.bat or javadoc.shprotected static final java.lang.String OPTIONS_FILE_NAME
options
file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files
protected static final java.lang.String PACKAGES_FILE_NAME
packages
file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files
protected static final java.lang.String ARGFILE_FILE_NAME
argfile
file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files
protected static final java.lang.String FILES_FILE_NAME
files
file name in the output directory when calling:
javadoc.exe(or .sh) @options @packages | @argfile | @files
private static final java.lang.String RESOURCE_DIR
private static final java.lang.String DEFAULT_CSS_NAME
private static final java.lang.String RESOURCE_CSS_DIR
private static final org.codehaus.plexus.languages.java.version.JavaVersion SINCE_JAVADOC_1_4
private static final org.codehaus.plexus.languages.java.version.JavaVersion SINCE_JAVADOC_1_4_2
private static final org.codehaus.plexus.languages.java.version.JavaVersion SINCE_JAVADOC_1_5
private static final org.codehaus.plexus.languages.java.version.JavaVersion SINCE_JAVADOC_1_6
private static final org.codehaus.plexus.languages.java.version.JavaVersion SINCE_JAVADOC_1_8
private static final org.codehaus.plexus.languages.java.version.JavaVersion JAVA_VERSION
@Component private org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager
@Component private ResourceResolver resourceResolver
@Component private org.apache.maven.shared.artifact.resolve.ArtifactResolver artifactResolver
@Component private org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager
@Component private org.apache.maven.shared.dependencies.resolve.DependencyResolver dependencyResolver
@Component private org.apache.maven.project.ProjectBuilder mavenProjectBuilder
@Component private org.apache.maven.toolchain.ToolchainManager toolchainManager
@Parameter(defaultValue="${session}", readonly=true, required=true) protected org.apache.maven.execution.MavenSession session
@Parameter(defaultValue="${settings}", readonly=true, required=true) private org.apache.maven.settings.Settings settings
@Parameter(defaultValue="${project}", readonly=true, required=true) protected org.apache.maven.project.MavenProject project
@Parameter(defaultValue="${mojoExecution}", readonly=true) private org.apache.maven.plugin.MojoExecution mojo
@Parameter(defaultValue="${settings.offline}", required=true, readonly=true) private boolean isOffline
@Parameter(defaultValue="${basedir}/src/main/javadoc") private java.io.File javadocDirectory
docfilessubdirs
parameter.
docfilessubdirs
@Parameter private java.lang.String[] additionalOptions
@Parameter(property="additionalJOption") private java.lang.String additionalJOption
<additionalJOption>-J-Xss128m</additionalJOption>See Jflag.
@Parameter private java.lang.String[] additionalJOptions
<additionalJOptions> <additionalJOption>-J-Xmx1g </additionalJOption> </additionalJOptions>
@Parameter(property="resourcesArtifacts") private ResourcesArtifact[] resourcesArtifacts
<resourcesArtifacts> <resourcesArtifact> <groupId>external.group.id</groupId> <artifactId>external-resources</artifactId> <version>1.0</version> </resourcesArtifact> </resourcesArtifacts>
@Parameter(property="localRepository") private org.apache.maven.artifact.repository.ArtifactRepository localRepository
@Parameter(property="reactorProjects", readonly=true) private java.util.List<org.apache.maven.project.MavenProject> reactorProjects
@Parameter(property="debug", defaultValue="false") private boolean debug
true
to debug the Javadoc plugin. With this, javadoc.bat(or.sh)
,
options
, @packages
or argfile
files are provided in the output directory.
@Parameter(property="javadocExecutable") private java.lang.String javadocExecutable
@Parameter(property="javadocVersion") private java.lang.String javadocVersion
private org.codehaus.plexus.languages.java.version.JavaVersion javadocRuntimeVersion
@Parameter(property="maven.javadoc.skip", defaultValue="false") protected boolean skip
@Parameter(property="maven.javadoc.failOnError", defaultValue="true") protected boolean failOnError
@Parameter(property="maven.javadoc.failOnWarnings", defaultValue="false") protected boolean failOnWarnings
@Parameter(property="useStandardDocletOptions", defaultValue="true") protected boolean useStandardDocletOptions
<docletArtifacts> <docletArtifact> <groupId>com.sun.tools.doclets</groupId> <artifactId>doccheck</artifactId> <version>1.2b2</version> </docletArtifact> </docletArtifacts> <useStandardDocletOptions>true</useStandardDocletOptions>
@Parameter(property="detectLinks", defaultValue="false") private boolean detectLinks
${project.url}/apidocs
.
<dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </dependency>The added Javadoc
-link
parameter will be http://commons.apache.org/lang/apidocs
.links
@Parameter(property="detectOfflineLinks", defaultValue="true") private boolean detectOfflineLinks
reactorProjects
is defined in a non-aggregator way, it generates default offline links
between modules based on the defined project's urls. For instance, if a parent project has two projects
module1
and module2
, the -linkoffline
will be:
-linkoffline
parameter for module1 will be
/absolute/path/to/
module2/target/site/apidocs
-linkoffline
parameter for module2 will be
/absolute/path/to/
module1/target/site/apidocs
offlineLinks
@Parameter(property="detectJavaApiLink", defaultValue="true") private boolean detectJavaApiLink
http://docs.oracle.com/javase/1.4.2/docs/api/
for Java source 1.4.
source
parameter in the org.apache.maven.plugins:maven-compiler-plugin
(defined in ${project.build.plugins}
or in ${project.build.pluginManagement}
),
or try to compute it from the javadocExecutable
version.
links
,
javaApiLinks
,
DEFAULT_JAVA_API_LINKS
@Parameter(property="javaApiLinks") private java.util.Properties javaApiLinks
DEFAULT_JAVA_API_LINKS
@Parameter(property="validateLinks", defaultValue="false") private boolean validateLinks
package-list
resources. If set, the content of
package-list
resources will be validated.@Parameter(property="bootclasspath") private java.lang.String bootclasspath
bootclasspath
can contain multiple paths
by separating them with a colon (:
) or a semi-colon (;
).
@Parameter(property="bootclasspathArtifacts") private BootclasspathArtifact[] bootclasspathArtifacts
<bootclasspathArtifacts> <bootclasspathArtifact> <groupId>my-groupId</groupId> <artifactId>my-artifactId</artifactId> <version>my-version</version> </bootclasspathArtifact> </bootclasspathArtifacts>
@Parameter(property="breakiterator", defaultValue="false") private boolean breakiterator
@Parameter(property="doclet") private java.lang.String doclet
@Parameter(property="docletArtifact") private DocletArtifact docletArtifact
-doclet
option).
<docletArtifact> <groupId>com.sun.tools.doclets</groupId> <artifactId>doccheck</artifactId> <version>1.2b2</version> </docletArtifact>
@Parameter(property="docletArtifacts") private DocletArtifact[] docletArtifacts
-doclet
option).
<docletArtifacts> <docletArtifact> <groupId>com.sun.tools.doclets</groupId> <artifactId>doccheck</artifactId> <version>1.2b2</version> </docletArtifact> </docletArtifacts>
@Parameter(property="docletPath") private java.lang.String docletPath
-doclet
option) and
any jar files it depends on. The docletPath
can contain multiple paths by separating them with
a colon (:
) or a semi-colon (;
).
@Parameter(property="encoding", defaultValue="${project.build.sourceEncoding}") private java.lang.String encoding
file.encoding
system property.
ISO-8859-1
to ensure reproducing build, but
this was reverted in 2.5.
@Parameter(property="excludePackageNames") private java.lang.String excludePackageNames
-subpackages
. Multiple packages can be separated by commas (,
), colons (:
)
or semicolons (;
).
<excludePackageNames>*.internal:org.acme.exclude1.*:org.acme.exclude2</excludePackageNames>
@Parameter(property="extdirs") private java.lang.String extdirs
extdirs
with a
colon (:
) or a semi-colon (;
).
@Parameter(property="locale") private java.lang.String locale
@Parameter(property="maxmemory") private java.lang.String maxmemory
-Xmx
parameter. Example: '512' or '512m'.
The memory unit depends on the JVM used. The units supported could be: k
, kb
,
m
, mb
, g
, gb
, t
, tb
.
If no unit specified, the default unit is m
.@Parameter(property="minmemory") private java.lang.String minmemory
-Xms
parameter. Example: '512' or '512m'.
The memory unit depends on the JVM used. The units supported could be: k
, kb
,
m
, mb
, g
, gb
, t
, tb
.
If no unit specified, the default unit is m
.@Parameter(property="old", defaultValue="false") private boolean old
@Parameter(property="overview", defaultValue="${basedir}/src/main/javadoc/overview.html") private java.io.File overview
@Parameter(property="quiet", defaultValue="false") private boolean quiet
@Parameter(property="show", defaultValue="protected") private java.lang.String show
@Parameter(property="source") private java.lang.String source
@Parameter(property="sourcepath") private java.lang.String sourcepath
sourcepath
can contain
multiple paths by separating them with a colon (:
) or a semi-colon (;
).
@Parameter(property="subpackages") private java.lang.String subpackages
:
).
@Parameter(property="verbose", defaultValue="false") private boolean verbose
@Parameter(property="author", defaultValue="true") private boolean author
@Parameter(property="bottom", defaultValue="Copyright © {inceptionYear}–{currentYear} {organizationName}. All rights reserved.") private java.lang.String bottom
<![CDATA[Copyright 2005, <a href="http://www.mycompany.com">MyCompany, Inc.<a>]]>
@Parameter(property="charset") private java.lang.String charset
docencoding
parameter.
@Parameter(property="docencoding", defaultValue="${project.reporting.outputEncoding}") private java.lang.String docencoding
UTF-8
.
@Parameter(property="docfilessubdirs", defaultValue="false") private boolean docfilessubdirs
**/doc-files
directories and the specifc resources
directory from the javadocDirectory
directory (for instance,
src/main/javadoc/com/mycompany/myapp/doc-files
and src/main/javadoc/resources
).
excludedocfilessubdir
,
javadocDirectory
@Parameter(property="doclint") private java.lang.String doclint
@Parameter(property="doctitle", defaultValue="${project.name} ${project.version} API") private java.lang.String doctitle
@Parameter(property="excludedocfilessubdir") private java.lang.String excludedocfilessubdir
:
).
docfilessubdirs
@Parameter(property="footer") private java.lang.String footer
@Parameter(property="groups") private Group[] groups
*
) meaning "match any characters". Multiple patterns can be included in a group
by separating them with colons (:
).
<groups> <group> <title>Core Packages</title> <!-- To includes java.lang, java.lang.ref, java.lang.reflect and only java.util (i.e. not java.util.jar) --> <packages>java.lang*:java.util</packages> </group> <group> <title>Extension Packages</title> <!-- To include javax.accessibility, javax.crypto, ... (among others) --> <packages>javax.*</packages> </group> </groups>Note: using
java.lang.*
for packages
would omit the java.lang
package but using java.lang*
will include it.
@Parameter(property="header") private java.lang.String header
@Parameter(property="helpfile") private java.lang.String helpfile
helpfile
could be an absolute File path.
src/main/java
, src/main/resources
or src/main/javadoc
)
or from a resource in the Javadoc plugin dependencies, for instance:
<helpfile>path/to/your/resource/yourhelp-doc.html</helpfile>Where
path/to/your/resource/yourhelp-doc.html
could be in src/main/javadoc
.
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <helpfile>path/to/your/resource/yourhelp-doc.html</helpfile> ... </configuration> <dependencies> <dependency> <groupId>groupId</groupId> <artifactId>artifactId</artifactId> <version>version</version> </dependency> </dependencies> </plugin> ... <plugins> </build>Where
path/to/your/resource/yourhelp-doc.html
is defined in the
groupId:artifactId:version
javadoc plugin dependency.
@Parameter(property="keywords", defaultValue="false") private boolean keywords
@Parameter(property="links") protected java.util.ArrayList<java.lang.String> links
isOffline
is set to false
./package-list
file. For instance:
<links> <link>http://docs.oracle.com/javase/1.4.2/docs/api</link> <links>will be used because
http://docs.oracle.com/javase/1.4.2/docs/api/package-list
exists.detectLinks
is defined, the links between the project dependencies are
automatically added.detectJavaApiLink
is defined, a Java API link, based on the Java version of the
project's sources, will be added automatically.detectLinks
,
detectJavaApiLink
@Parameter(property="linksource", defaultValue="false") private boolean linksource
@Parameter(property="nocomment", defaultValue="false") private boolean nocomment
@Parameter(property="nodeprecated", defaultValue="false") private boolean nodeprecated
@Parameter(property="nodeprecatedlist", defaultValue="false") private boolean nodeprecatedlist
@Parameter(property="nohelp", defaultValue="false") private boolean nohelp
@Parameter(property="noindex", defaultValue="false") private boolean noindex
@Parameter(property="nonavbar", defaultValue="false") private boolean nonavbar
@Parameter(property="nooverview", defaultValue="false") private boolean nooverview
@Parameter(property="noqualifier") private java.lang.String noqualifier
<noqualifier>all</noqualifier> or <noqualifier>packagename1:packagename2</noqualifier>See noqualifier.
@Parameter(property="nosince", defaultValue="false") private boolean nosince
@Parameter(property="notimestamp", defaultValue="false") private boolean notimestamp
@Parameter(property="notree", defaultValue="false") private boolean notree
@Parameter(property="offlineLinks") private OfflineLink[] offlineLinks
-link
; they both create links to javadoc-generated documentation
for external referenced classes.
<offlineLinks> <offlineLink> <url>http://docs.oracle.com/javase/1.5.0/docs/api/</url> <location>../javadoc/jdk-5.0/</location> </offlineLink> </offlineLinks>
detectOfflineLinks
is defined, the offline links between the project modules are
automatically added if the goal is calling in a non-aggregator way.
@Parameter(property="destDir", alias="destDir", defaultValue="${project.build.directory}/apidocs", required=true) protected java.io.File outputDirectory
@Parameter(property="packagesheader") private java.lang.String packagesheader
@Parameter(property="serialwarn", defaultValue="false") private boolean serialwarn
@Parameter(property="sourcetab", alias="linksourcetab") private int sourcetab
linksourcetab
in Java 1.4.2 (refer to bug ID
4788919).
@Parameter(property="splitindex", defaultValue="false") private boolean splitindex
@Parameter(property="stylesheet", defaultValue="java") private java.lang.String stylesheet
maven
's javadoc stylesheet or
java
's default stylesheet when a stylesheetfile parameter is not specified.
maven or java
.
@Parameter(property="stylesheetfile") private java.lang.String stylesheetfile
stylesheetfile
could be an absolute File path.
src/main/java
, src/main/resources
or src/main/javadoc
)
or from a resource in the Javadoc plugin dependencies, for instance:
<stylesheetfile>path/to/your/resource/yourstylesheet.css</stylesheetfile>Where
path/to/your/resource/yourstylesheet.css
could be in src/main/javadoc
.
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <stylesheetfile>path/to/your/resource/yourstylesheet.css</stylesheetfile> ... </configuration> <dependencies> <dependency> <groupId>groupId</groupId> <artifactId>artifactId</artifactId> <version>version</version> </dependency> </dependencies> </plugin> ... <plugins> </build>Where
path/to/your/resource/yourstylesheet.css
is defined in the
groupId:artifactId:version
javadoc plugin dependency.
@Parameter(property="taglet") private java.lang.String taglet
@Parameter(property="tagletArtifact") private TagletArtifact tagletArtifact
<taglets> <taglet> <tagletClass>com.sun.tools.doclets.ToDoTaglet</tagletClass> </taglet> <taglet> <tagletClass>package.to.AnotherTagletClass</tagletClass> </taglet> ... </taglets> <tagletArtifact> <groupId>group-Taglet</groupId> <artifactId>artifact-Taglet</artifactId> <version>version-Taglet</version> </tagletArtifact>
@Parameter(property="tagletArtifacts") private TagletArtifact[] tagletArtifacts
<tagletArtifacts> <tagletArtifact> <groupId>group-Taglet</groupId> <artifactId>artifact-Taglet</artifactId> <version>version-Taglet</version> </tagletArtifact> ... </tagletArtifacts>
@Parameter(property="tagletpath") private java.lang.String tagletpath
tagletpath
can contain
multiple paths by separating them with a colon (:
) or a semi-colon (;
).
@Parameter(property="taglets") private Taglet[] taglets
<taglets> <taglet> <tagletClass>com.sun.tools.doclets.ToDoTaglet</tagletClass> <!--<tagletpath>/home/taglets</tagletpath>--> <tagletArtifact> <groupId>group-Taglet</groupId> <artifactId>artifact-Taglet</artifactId> <version>version-Taglet</version> </tagletArtifact> </taglet> </taglets>
@Parameter(property="tags") private Tag[] tags
<tags> <tag> <name>todo</name> <placement>a</placement> <head>To Do:</head> </tag> </tags>Note: the placement should be a combinaison of Xaoptcmf letters:
X
(disable tag)a
(all)o
(overview)p
(packages)t
(types, that is classes and interfaces)c
(constructors)m
(methods)f
(fields)@Parameter(property="top") private java.lang.String top
@Parameter(property="use", defaultValue="true") private boolean use
@Parameter(property="version", defaultValue="true") private boolean version
@Parameter(property="windowtitle", defaultValue="${project.name} ${project.version} API") private java.lang.String windowtitle
@Parameter(defaultValue="false") private boolean includeDependencySources
@Parameter(defaultValue="${project.build.directory}/distro-javadoc-sources") private java.io.File sourceDependencyCacheDir
includeDependencySources
@Parameter(defaultValue="false") private boolean includeTransitiveDependencySources
includeDependencySources
@Parameter private java.util.List<java.lang.String> dependencySourceIncludes
org.apache.maven:*
includeDependencySources
@Parameter private java.util.List<java.lang.String> dependencySourceExcludes
org.apache.maven.shared:*
includeDependencySources
@Parameter(defaultValue="${project.build.directory}/javadoc-bundle-options", readonly=true) private java.io.File javadocOptionsDir
JavadocOptions
instances will be written before they
are added to javadoc resources bundles.private transient java.util.List<JavadocBundle> dependencyJavadocBundles
@Parameter private java.util.List<AdditionalDependency> additionalDependencies
<additionalDependencies> <additionalDependency> <groupId>geronimo-spec</groupId> <artifactId>geronimo-spec-jta</artifactId> <version>1.0.1B-rc4:</version> </additionalDependency> </additionalDependencies>
@Parameter private java.util.List<java.lang.String> sourceFileIncludes
@Parameter private java.util.List<java.lang.String> sourceFileExcludes
@Parameter(defaultValue="true", property="maven.javadoc.applyJavadocSecurityFix") private boolean applyJavadocSecurityFix
@Parameter private java.util.Map<java.lang.String,java.lang.String> jdkToolchain
Specify the requirements for this jdk toolchain. This overrules the toolchain selected by the maven-toolchain-plugin.
note: requires at least Maven 3.3.1protected boolean isAggregator()
@aggregator
.true
if the goal is designed as an aggregator, false
otherwise.AggregatorJavadocReport
,
AggregatorTestJavadocReport
protected boolean isTest()
Java Test code
.true
if the goal generates Test Javadocs, false
otherwise.protected java.lang.String getOutputDirectory()
protected org.apache.maven.project.MavenProject getProject()
protected java.util.List<java.io.File> getProjectBuildOutputDirs(org.apache.maven.project.MavenProject p)
p
- not null maven projectprotected java.util.List<java.lang.String> getProjectSourceRoots(org.apache.maven.project.MavenProject p)
p
- not null maven projectprotected java.util.List<java.lang.String> getExecutionProjectSourceRoots(org.apache.maven.project.MavenProject p)
p
- not null maven projectprotected java.io.File getJavadocDirectory()
protected java.lang.String getDoclint()
protected java.lang.String getDoctitle()
protected java.io.File getOverview()
javadocdirectory
protected java.lang.String getWindowtitle()
private java.lang.String getCharset()
getDocencoding()
if null
.private java.lang.String getDocencoding()
UTF-8
if null
.private java.lang.String getEncoding()
file.encoding
system property if null
.public void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
abstract void doExecute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
protected final void verifyRemovedParameter(java.lang.String paramName)
private void verifyReplacedParameter(java.lang.String oldParamName, java.lang.String newParamNew)
protected void executeReport(java.util.Locale unusedLocale) throws org.apache.maven.reporting.MavenReportException
unusedLocale
- the wanted locale (actually unused).org.apache.maven.reporting.MavenReportException
- if anyprotected final java.util.Collection<java.lang.String> collect(java.util.Collection<java.util.Collection<java.lang.String>> sourcePaths)
protected java.util.List<java.lang.String> getFiles(java.util.Collection<java.lang.String> sourcePaths) throws org.apache.maven.reporting.MavenReportException
sourcePaths
- a Collection that contains the paths to the source filesorg.apache.maven.reporting.MavenReportException
- MavenReportException
protected java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> getSourcePaths() throws org.apache.maven.reporting.MavenReportException
String
org.apache.maven.reporting.MavenReportException
- MavenReportException
JavadocUtil.pruneDirs(MavenProject, Collection)
protected SourceResolverConfig configureDependencySourceResolution(SourceResolverConfig config)
config
- SourceResolverConfig
SourceResolverConfig
protected final java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> getDependencySourcePaths() throws org.apache.maven.reporting.MavenReportException
configureDependencySourceResolution(SourceResolverConfig)
.org.apache.maven.reporting.MavenReportException
- MavenReportException
private org.apache.maven.shared.artifact.filter.resolve.TransformableFilter createDependencyArtifactFilter()
private SourceResolverConfig getDependencySourceResolverConfig()
protected boolean canGenerateReport(java.util.List<java.lang.String> files)
files
- the project filesprivate java.lang.String getExcludedPackages(java.util.Collection<java.lang.String> sourcePaths) throws org.apache.maven.reporting.MavenReportException
sourcePaths
- the collection of paths to the source filesorg.apache.maven.reporting.MavenReportException
private java.lang.String getSourcePath(java.util.Collection<java.lang.String> sourcePaths)
sourcePaths
- the list of paths to the source files that will be included in the javadoc.:
) on Solaris or semi-colon (;
) on Windows).File.pathSeparator
private java.lang.String[] getExcludedPackages() throws org.apache.maven.reporting.MavenReportException
excludePackageNames
parameter. The packages are split
with ',', ':', or ';' and then formatted.org.apache.maven.reporting.MavenReportException
private static java.util.List<java.lang.String> trimValues(java.util.List<java.lang.String> items)
private java.util.List<java.io.File> getPathElements() throws org.apache.maven.reporting.MavenReportException
-classpath
and --module-path
parameter.
Since we have all the sources of the current reactor, it is sufficient to consider the
dependencies of the reactor modules, excluding the module artifacts which may not yet be available
when the reactor project is built for the first time.org.apache.maven.reporting.MavenReportException
- if any.protected org.apache.maven.shared.artifact.filter.resolve.ScopeFilter getDependencyScopeFilter()
public org.apache.maven.artifact.Artifact resolveDependency(org.apache.maven.model.Dependency dependency) throws org.apache.maven.reporting.MavenReportException
dependency
- Dependency
Artifact
org.apache.maven.reporting.MavenReportException
- when artifact could not be resolvedprotected final org.apache.maven.toolchain.Toolchain getToolchain()
private void populateCompileArtifactMap(java.util.Map<java.lang.String,org.apache.maven.artifact.Artifact> compileArtifactMap, java.util.Collection<org.apache.maven.artifact.Artifact> artifactList) throws org.apache.maven.reporting.MavenReportException
compileArtifactMap
- the hashmap that will contain the artifactsartifactList
- the list of artifacts that will be put in the maporg.apache.maven.reporting.MavenReportException
- if anyprivate java.lang.String getBottomText()
private java.lang.String getStylesheetFile(java.io.File javadocOutputDirectory)
stylesheetfile
is empty, return the file as String definded by stylesheet
value.
stylesheetfile
is defined, return the file as String.
stylesheetfile
could be a path from a resource in the project source
directories (i.e. src/main/java
, src/main/resources
or src/main/javadoc
)
or from a resource in the Javadoc plugin dependencies.javadocOutputDirectory
- the output directorygetResource(List, String)
private java.lang.String getHelpFile(java.io.File javadocOutputDirectory)
helpfile
could be a path from a resource in the project source
directories (i.e. src/main/java
, src/main/resources
or src/main/javadoc
)
or from a resource in the Javadoc plugin dependencies.javadocOutputDirectory
- the output directory.getResource(File, String)
private java.lang.String getAccessLevel()
private java.lang.String getBootclassPath() throws org.apache.maven.reporting.MavenReportException
-bootclasspath
option.:
) on Solaris or semi-colon (;
) on Windows).org.apache.maven.reporting.MavenReportException
- if anyFile.pathSeparator
private java.lang.String getDocletPath() throws org.apache.maven.reporting.MavenReportException
-docletpath
option.
Either docletArtifact or doclectArtifacts can be defined and used, not both, docletArtifact
takes precedence over doclectArtifacts. docletPath is always appended to any result path
definition.:
) on Solaris or semi-colon (;
) on Windows).org.apache.maven.reporting.MavenReportException
- if anyFile.pathSeparator
private boolean isDocletArtifactEmpty(DocletArtifact aDocletArtifact)
aDocletArtifact
- could be nulltrue
if aDocletArtifact or the groupId/artifactId/version of the doclet artifact is null,
false
otherwise.private java.lang.String getTagletPath() throws org.apache.maven.reporting.MavenReportException
-tagletpath
option.:
) on Solaris or semi-colon (;
) on Windows).org.apache.maven.reporting.MavenReportException
- if anyFile.pathSeparator
private java.util.Set<java.lang.String> collectLinks() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<Group> collectGroups() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<ResourcesArtifact> collectResourcesArtifacts() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<BootclasspathArtifact> collectBootClasspathArtifacts() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<OfflineLink> collectOfflineLinks() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<Tag> collectTags() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<TagletArtifact> collectTagletArtifacts() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<DocletArtifact> collectDocletArtifacts() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.Set<Taglet> collectTaglets() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
private java.util.List<java.lang.String> getArtifactsAbsolutePath(JavadocPathArtifact javadocArtifact) throws org.apache.maven.reporting.MavenReportException
javadocArtifact
- not nullorg.apache.maven.reporting.MavenReportException
- if anyprivate org.apache.maven.artifact.Artifact createAndResolveArtifact(JavadocPathArtifact javadocArtifact) throws org.apache.maven.shared.artifact.resolve.ArtifactResolverException
Artifact
representing the configured JavadocPathArtifact
and resolves it.javadocArtifact
- the JavadocPathArtifact
to resolveArtifact
org.apache.maven.shared.artifact.resolve.ArtifactResolverException
private void addMemoryArg(org.codehaus.plexus.util.cli.Commandline cmd, java.lang.String arg, java.lang.String memory)
cmd
- the command line execution object where the argument will be addedarg
- the argument parameter namememory
- the JVM memory value to be setJavadocUtil.parseJavadocMemory(String)
private void addProxyArg(org.codehaus.plexus.util.cli.Commandline cmd)
cmd
- the command line execution object where the argument will be addedprivate java.lang.String getJavadocExecutable() throws java.io.IOException
java.home
system property or the JAVA_HOME
environment variable.java.io.IOException
- if not foundprivate void setFJavadocVersion(java.io.File jExecutable) throws org.apache.maven.reporting.MavenReportException
javadocRuntimeVersion
jExecutable
- not nullorg.apache.maven.reporting.MavenReportException
- if not foundJavadocUtil.getJavadocVersion(File)
private boolean isJavaDocVersionAtLeast(org.codehaus.plexus.languages.java.version.JavaVersion requiredVersion)
requiredVersion
- the required version, for example 1.5ftrue
if the javadoc version is equal or greater than the
required versionprivate void addArgIf(java.util.List<java.lang.String> arguments, boolean b, java.lang.String value)
command line
conditionally based on the given flag.arguments
- a list of arguments, not nullb
- the flag which controls if the argument is added or not.value
- the argument value to be added.private void addArgIf(java.util.List<java.lang.String> arguments, boolean b, java.lang.String value, org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
command line
regarding the requested Java version.arguments
- a list of arguments, not nullb
- the flag which controls if the argument is added or not.value
- the argument value to be added.requiredJavaVersion
- the required Java version, for example 1.31f or 1.4faddArgIf(java.util.List, boolean, String)
,
#isJavaDocVersionAtLeast(float)
private void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value)
command line
if the the value is not null or empty.
Moreover, the value could be comma separated.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.addArgIfNotEmpty(java.util.List, String, String, boolean)
private void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value, boolean repeatKey, boolean splitValue, org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
command line
if the the value is not null or empty.
Moreover, the value could be comma separated.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.repeatKey
- repeat or not the key in the command linesplitValue
- if true
given value will be tokenized by commarequiredJavaVersion
- the required Java version, for example 1.31f or 1.4faddArgIfNotEmpty(List, String, String, boolean, boolean)
,
#isJavaDocVersionAtLeast(float)
private void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value, boolean repeatKey, boolean splitValue)
command line
if the the value is not null or empty.
Moreover, the value could be comma separated.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.repeatKey
- repeat or not the key in the command linesplitValue
- if true
given value will be tokenized by commaprivate void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value, boolean repeatKey)
command line
if the the value is not null or empty.
Moreover, the value could be comma separated.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.repeatKey
- repeat or not the key in the command lineprivate void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value, org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion)
command line
regarding the requested Java version.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.requiredJavaVersion
- the required Java version, for example 1.31f or 1.4f#addArgIfNotEmpty(java.util.List, String, String, float, boolean)
private void addArgIfNotEmpty(java.util.List<java.lang.String> arguments, java.lang.String key, java.lang.String value, org.codehaus.plexus.languages.java.version.JavaVersion requiredJavaVersion, boolean repeatKey)
command line
regarding the requested Java version.arguments
- a list of arguments, not nullkey
- the argument name.value
- the argument value to be added.requiredJavaVersion
- the required Java version, for example 1.31f or 1.4frepeatKey
- repeat or not the key in the command lineaddArgIfNotEmpty(java.util.List, String, String)
,
#isJavaDocVersionAtLeast(float)
private void addLinkofflineArguments(java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
offlineLinks
values as individual -linkoffline
javadoc options.
detectOfflineLinks
, try to add javadoc apidocs according Maven conventions for all modules given
in the project.arguments
- a list of arguments, not nullorg.apache.maven.reporting.MavenReportException
- if anyofflineLinks
,
getModulesLinks()
,
package-list specprivate void addLinkArguments(java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
links
values as individual -link
javadoc options.
If detectLinks
, try to add javadoc apidocs according Maven conventions for all dependencies given
in the project.
${link}/package-list
fetchable.
arguments
- a list of arguments, not nullorg.apache.maven.reporting.MavenReportException
detectLinks
,
getDependenciesLinks()
,
package-list specprivate void copyAllResources(java.io.File javadocOutputDirectory) throws org.apache.maven.reporting.MavenReportException
javadocOutputDirectory
- not nullorg.apache.maven.reporting.MavenReportException
- if anycopyDefaultStylesheet(File)
,
copyJavadocResources(File)
,
copyAdditionalJavadocResources(File)
private void copyDefaultStylesheet(java.io.File anOutputDirectory) throws java.io.IOException
DEFAULT_CSS_NAME
css file from the current class
loader to the outputDirectory
only if stylesheetfile
is empty and
stylesheet
is equals to maven
.anOutputDirectory
- the output directoryjava.io.IOException
- if anyDEFAULT_CSS_NAME
,
JavadocUtil.copyResource(java.net.URL, java.io.File)
private void copyJavadocResources(java.io.File anOutputDirectory) throws java.io.IOException
doc-files
directories from javadocDirectory
of
the current project or of the projects in the reactor to the outputDirectory
.anOutputDirectory
- the output directoryjava.io.IOException
- if anydocfilessubdirs
private void resolveDependencyBundles() throws java.io.IOException
java.io.IOException
private void copyAdditionalJavadocResources(java.io.File anOutputDirectory) throws org.apache.maven.reporting.MavenReportException
anOutputDirectory
- the output directoryorg.apache.maven.reporting.MavenReportException
- if anyresourcesArtifacts
private java.util.List<java.lang.String> getPackageNames(java.util.Collection<java.lang.String> sourcePaths, java.util.List<java.lang.String> files)
sourcePaths
- could be nullfiles
- not nullprivate java.util.List<java.lang.String> getFilesWithUnnamedPackages(java.util.Collection<java.lang.String> sourcePaths, java.util.List<java.lang.String> files)
sourcePaths
- could be nullfiles
- not nullprivate java.util.List<java.lang.String> getPackageNamesOrFilesWithUnnamedPackages(java.util.Collection<java.lang.String> sourcePaths, java.util.List<java.lang.String> files, boolean onlyPackageName)
sourcePaths
- not null, containing absolute and relative pathsfiles
- not null, containing list of quoted filesonlyPackageName
- boolean for only package name#getFiles(List)
,
getSourcePaths()
private void addCommandLineOptions(org.codehaus.plexus.util.cli.Commandline cmd, java.util.List<java.lang.String> arguments, java.io.File javadocOutputDirectory) throws org.apache.maven.reporting.MavenReportException
options
file for all options and arguments and add the @options
in the
command line.cmd
- not nullarguments
- not nulljavadocOutputDirectory
- not nullorg.apache.maven.reporting.MavenReportException
- if anyOPTIONS_FILE_NAME
private void addCommandLineArgFile(org.codehaus.plexus.util.cli.Commandline cmd, java.io.File javadocOutputDirectory, java.util.List<java.lang.String> files) throws org.apache.maven.reporting.MavenReportException
argfile
(or files
, depending the JDK) to hold files and add
the @argfile
(or @file
, depending the JDK) in the command line.cmd
- not nulljavadocOutputDirectory
- not nullfiles
- not nullorg.apache.maven.reporting.MavenReportException
- if any#isJavaDocVersionAtLeast(float)
,
ARGFILE_FILE_NAME
,
FILES_FILE_NAME
private void addCommandLinePackages(org.codehaus.plexus.util.cli.Commandline cmd, java.io.File javadocOutputDirectory, java.util.List<java.lang.String> packageNames) throws org.apache.maven.reporting.MavenReportException
packages
to hold all package names and add the @packages
in
the command line.cmd
- not nulljavadocOutputDirectory
- not nullpackageNames
- not nullorg.apache.maven.reporting.MavenReportException
- if anyPACKAGES_FILE_NAME
private void validateJavadocOptions() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
- if errorprivate void validateStandardDocletOptions() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
- if error or conflict foundprivate void addJavadocOptions(java.io.File javadocOutputDirectory, java.util.List<java.lang.String> arguments, java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> allSourcePaths) throws org.apache.maven.reporting.MavenReportException
javadocOutputDirectory
- not nullarguments
- not nullsourcePaths
- not nullorg.apache.maven.reporting.MavenReportException
- if anyprivate java.io.File findMainDescriptor(java.util.Collection<java.lang.String> roots)
private void addStandardDocletOptions(java.io.File javadocOutputDirectory, java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
javadocOutputDirectory
- not nullarguments
- not nullorg.apache.maven.reporting.MavenReportException
- if anyprivate void addGroups(java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
groups
parameter to arguments.arguments
- not nullorg.apache.maven.reporting.MavenReportException
private void addTags(java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
tags
parameter to arguments.arguments
- not nullorg.apache.maven.reporting.MavenReportException
private void addTaglets(java.util.List<java.lang.String> arguments)
taglets
parameter to arguments.arguments
- not nullprivate void addTagletsFromTagletArtifacts(java.util.List<java.lang.String> arguments) throws org.apache.maven.reporting.MavenReportException
tagletArtifacts
and add them to arguments.arguments
- not nullorg.apache.maven.reporting.MavenReportException
- if anyJavadocUtil.getTagletClassNames(File)
private void executeJavadocCommandLine(org.codehaus.plexus.util.cli.Commandline cmd, java.io.File javadocOutputDirectory) throws org.apache.maven.reporting.MavenReportException
cmd
- not nulljavadocOutputDirectory
- not nullorg.apache.maven.reporting.MavenReportException
- if any errors occurprivate int fixFrameInjectionBug(java.io.File javadocOutputDirectory, java.lang.String outputEncoding) throws java.io.IOException
javadocOutputDirectory
- directory to scan for vulnerabilitiesoutputEncoding
- encoding used by the javadoc tool (-docencoding parameter).
If null
, the platform's default encoding is used (like javadoc does).java.io.IOException
private java.lang.String getResource(java.io.File outputFile, java.lang.String inputResourceName)
outputFile
- not nulinputResourceName
- a not null resource in src/main/java
, src/main/resources
or
src/main/javadoc
or in the Javadoc plugin dependencies.private java.net.URL getResource(java.util.List<java.lang.String> classPath, java.lang.String resource)
classPath
- a not null String list of files where resource will be look up.resource
- a not null ressource to find in the class path.ClassLoader.getResource(String)
private java.lang.String getFullJavadocGoal()
org.apache.maven.plugins:maven-javadoc-plugin:CURRENT_VERSION:[test-]javadoc
private java.util.List<OfflineLink> getModulesLinks() throws org.apache.maven.reporting.MavenReportException
${project.url}/apidocs
.org.apache.maven.reporting.MavenReportException
- if anydetectOfflineLinks
,
reactorProjects
private java.util.List<java.lang.String> getDependenciesLinks()
${project.url}/apidocs
.detectLinks
,
#isValidJavadocLink(String)
private OfflineLink getDefaultJavadocApiLink()
detectJavaApiLink
, the Java API link based on the javaApiLinks
properties and the
value of the source
parameter in the
org.apache.maven.plugins:maven-compiler-plugin
defined in ${project.build.plugins}
or in ${project.build.pluginManagement}
,
or the javadocRuntimeVersion
, or null
if not defined.detectJavaApiLink
,
javaApiLinks
,
DEFAULT_JAVA_API_LINKS
,
source parameterprivate java.util.Set<java.lang.String> followLinks(java.util.Set<java.lang.String> links)
links
- Links to follow.protected boolean isValidJavadocLink(java.lang.String link, boolean detecting)
link
- not nulldetecting
- true
if the link is generated by
detectLinks
, or false
otherwisetrue
if the link has a /package-list
, false
otherwise.private void writeDebugJavadocScript(java.lang.String cmdLine, java.io.File javadocOutputDirectory)
cmdLine
- the current command line as string, not null.javadocOutputDirectory
- the output dir, not null.executeJavadocCommandLine(Commandline, File)
private boolean isJavadocVMInitError(java.lang.String output)
output
- the command line output, not null.true
if Javadoc output command line contains Javadoc word, false
otherwise.executeJavadocCommandLine(Commandline, File)
private static java.lang.String getJavadocLink(org.apache.maven.project.MavenProject p)
p
- not null${project.url}/${destDir}
where
destDir
is configued in the Javadoc plugin configuration (apidocs
by default).private static java.lang.String cleanUrl(java.lang.String url)
url
- could be null.private static org.apache.maven.model.Plugin getPlugin(org.apache.maven.project.MavenProject p, java.lang.String pluginId)
p
- not nullpluginId
- not null key of the plugin defined in PluginContainer.getPluginsAsMap()
or in PluginContainer.getPluginsAsMap()
${project.build.plugins}
or in
${project.build.pluginManagement}
, or null
if not defined.private static java.lang.String getPluginParameter(org.apache.maven.project.MavenProject p, java.lang.String pluginId, java.lang.String param)
p
- not nullpluginId
- not nullparam
- not nullparam
key
or null
if not found.protected final java.io.File getJavadocOptionsFile()
File
file.protected final JavadocOptions buildJavadocOptions() throws java.io.IOException
JavadocOptions
java.io.IOException
- IOException
protected java.lang.String getAttachmentClassifier()
protected void logError(java.lang.String message, java.lang.Throwable t)
message
- The message which should be announced.t
- The throwable part of the message.protected void failOnError(java.lang.String prefix, java.lang.Exception e) throws org.apache.maven.plugin.MojoExecutionException
prefix
- The prefix of the exception.e
- The exception.org.apache.maven.plugin.MojoExecutionException
- MojoExecutionException