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;
+ }
}