You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zh...@apache.org on 2022/10/25 13:42:01 UTC
[hbase] branch master updated: HBASE-25983 javadoc generation fails on openjdk-11.0.11+9 (#4837)
This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/master by this push:
new 792f12b616e HBASE-25983 javadoc generation fails on openjdk-11.0.11+9 (#4837)
792f12b616e is described below
commit 792f12b616ea67822064b64febaf43479a890195
Author: Duo Zhang <zh...@apache.org>
AuthorDate: Tue Oct 25 21:41:53 2022 +0800
HBASE-25983 javadoc generation fails on openjdk-11.0.11+9 (#4837)
Signed-off-by: Nick Dimiduk <nd...@apache.org>
---
pom.xml | 59 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 file changed, 45 insertions(+), 14 deletions(-)
diff --git a/pom.xml b/pom.xml
index bca2e41958b..c9f74cde8b0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -782,7 +782,12 @@
comes in via hbase-thirdparty hbase-shaded-netty-->
<netty.hadoop.version>3.10.5.Final</netty.hadoop.version>
<!-- end HBASE-15925 default hadoop compatibility values -->
- <audience-annotations.version>0.5.0</audience-annotations.version>
+ <audience-annotations.version>0.13.0</audience-annotations.version>
+ <!--
+ The version used when generating javadoc, 0.13.0 is the latest version which supports jdk8.
+ When building with jdk11, we will use 0.14.1, please see the build-with-jdk11 profile.
+ -->
+ <javadoc.audience-annotations.version>0.13.0</javadoc.audience-annotations.version>
<avro.version>1.11.0</avro.version>
<caffeine.version>2.8.1</caffeine.version>
<commons-codec.version>1.13</commons-codec.version>
@@ -933,8 +938,7 @@
this parameter by invoking mvn with -Dbuild.id=$BUILD_ID-->
<build.id>${maven.build.timestamp}</build.id>
<shell-executable>bash</shell-executable>
- <!-- TODO HBASE-15041 clean up our javadocs so jdk8 linter can be used.
- property as of javadoc-plugin 3.0.0 -->
+ <!-- Still need this to ignore some errors when building javadoc-->
<doclint>none</doclint>
</properties>
<!-- Sorted by groups of dependencies then groupId and artifactId -->
@@ -1767,8 +1771,6 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>${compileSource}</source>
- <target>${compileSource}</target>
<showWarnings>true</showWarnings>
<showDeprecation>false</showDeprecation>
<useIncrementalCompilation>false</useIncrementalCompilation>
@@ -3010,7 +3012,7 @@
<docletArtifact>
<groupId>org.apache.yetus</groupId>
<artifactId>audience-annotations</artifactId>
- <version>${audience-annotations.version}</version>
+ <version>${javadoc.audience-annotations.version}</version>
</docletArtifact>
<useStandardDocletOptions>true</useStandardDocletOptions>
<destDir>apidocs</destDir>
@@ -3067,7 +3069,7 @@
<docletArtifact>
<groupId>org.apache.yetus</groupId>
<artifactId>audience-annotations</artifactId>
- <version>${audience-annotations.version}</version>
+ <version>${javadoc.audience-annotations.version}</version>
</docletArtifact>
<useStandardDocletOptions>true</useStandardDocletOptions>
<destDir>testapidocs</destDir>
@@ -3157,18 +3159,17 @@
<profile>
<id>build-with-jdk8</id>
<activation>
- <jdk>[1.8,)</jdk>
+ <jdk>1.8</jdk>
</activation>
- <build>
- <pluginManagement>
- <plugins/>
- </pluginManagement>
- </build>
+ <properties>
+ <maven.compiler.source>${compileSource}</maven.compiler.source>
+ <maven.compiler.target>${compileSource}</maven.compiler.target>
+ </properties>
</profile>
<profile>
<id>build-with-jdk11</id>
<activation>
- <jdk>[1.11,)</jdk>
+ <jdk>[11,)</jdk>
</activation>
<properties>
<maven.compiler.release>${releaseTarget}</maven.compiler.release>
@@ -3188,7 +3189,37 @@
TODO: replicate logic for windows
-->
<surefire.Xmx>2200m</surefire.Xmx>
+ <!--
+ com.sun.javadoc and com.sun.tools.doclets are both deprecated in java 11 and will
+ fail the javadoc generating, so we need to use yetus 0.14.1 where it uses jdk.javadoc
+ and jdk.javadoc.doclet instead
+ -->
+ <javadoc.audience-annotations.version>0.14.1</javadoc.audience-annotations.version>
</properties>
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>${maven.javadoc.version}</version>
+ <configuration>
+ <source>${compileSource}</source>
+ <!--
+ Need to add this option to ignore the source errors, epsecially that we reference
+ test code in hbase-testing-util's main code.
+ -->
+ <additionalOptions>--ignore-source-errors</additionalOptions>
+ <additionalJOptions>
+ <additionalJOption>-J-Xmx2G</additionalJOption>
+ <additionalJOption>-J--add-exports</additionalJOption>
+ <additionalJOption>-Jjdk.javadoc/jdk.javadoc.internal.tool=ALL-UNNAMED</additionalJOption>
+ </additionalJOptions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
</profile>
<!-- profile activated by the Jenkins patch testing job -->
<profile>