diff --git a/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java b/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java index fffe6d387..8f4d16c7a 100644 --- a/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java +++ b/src/main/java/org/apache/maven/plugins/javadoc/AbstractJavadocMojo.java @@ -496,7 +496,7 @@ public AbstractJavadocMojo( * Detect the links for all modules defined in the project. *
* If {@code 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 + * 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: *
* The added Javadoc -linkoffline parameter for module1 will be @@ -5331,6 +5331,10 @@ private String getFullJavadocGoal() { return sb.toString(); } + protected boolean isDetectOfflineLinks() { + return detectOfflineLinks; + } + /** * Using Maven, a Javadoc link is given by ${project.url}/apidocs. * @@ -5343,7 +5347,7 @@ private String getFullJavadocGoal() { */ private List getModulesLinks() throws MavenReportException { List aggregatedProjects = reactorProjects; - if (!detectOfflineLinks || isAggregator() || aggregatedProjects.isEmpty()) { + if (!isDetectOfflineLinks() || isAggregator() || aggregatedProjects.isEmpty()) { return Collections.emptyList(); } diff --git a/src/main/java/org/apache/maven/plugins/javadoc/JavadocJarMojo.java b/src/main/java/org/apache/maven/plugins/javadoc/JavadocJarMojo.java index f5d8ae189..d25dd1c65 100644 --- a/src/main/java/org/apache/maven/plugins/javadoc/JavadocJarMojo.java +++ b/src/main/java/org/apache/maven/plugins/javadoc/JavadocJarMojo.java @@ -176,6 +176,25 @@ public JavadocJarMojo( @Parameter(property = "maven.javadoc.classifier", defaultValue = "javadoc", required = true) private String classifier; + /** + * Detect the links for all modules defined in the project. + *
+ * If {@code 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: + *
+ * The added Javadoc -linkoffline parameter for module1 will be + * /absolute/path/to/module2/target/site/apidocs + *
+ * The added Javadoc -linkoffline parameter for module2 will be + * /absolute/path/to/module1/target/site/apidocs + * + * @see #offlineLinks + * @since 2.6 + */ + @Parameter(property = "detectOfflineLinks", defaultValue = "false") + private boolean detectOfflineLinks; + /** {@inheritDoc} */ @Override protected void doExecute() throws MojoExecutionException { @@ -290,4 +309,9 @@ private File generateArchive(File javadocFiles, String jarFileName) throws Archi return outputFile; } + + @Override + public boolean isDetectOfflineLinks() { + return detectOfflineLinks; + } }