This is an automated email from the ASF dual-hosted git repository. yong pushed a commit to branch branch-4.15 in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
commit 40af8ee4a4dbab6a341d27b0595718ef6cf2f416 Author: ZhangJian He <[email protected]> AuthorDate: Tue Jun 7 18:54:02 2022 +0800 Fix maven javadoc generate (#3317) Currently, the maven javadoc generate is broken both on master and branch-4.14 - fix the javadoc generate, the gradle script has already use `delombok` - delete unneeded `package-info` file - delete unused dependency `spotbugs-annotations`, it's not worth to open other pr(IMO) (cherry picked from commit 9f3a815902171467ad6ca863d186449049d78448) --- .github/workflows/pr-validation.yml | 3 +- bookkeeper-common/pom.xml | 25 +++++++++++++ bookkeeper-server/pom.xml | 1 + .../org/apache/bookkeeper/stats/package-info.java | 23 ------------ bookkeeper-stats/pom.xml | 8 +---- .../apache/bookkeeper/stats/AlertStatsLogger.java | 0 pom.xml | 41 ++++++++++++++++++++++ site3/website/scripts/javadoc-gen.sh | 2 +- stream/distributedlog/pom.xml | 3 +- 9 files changed, 72 insertions(+), 34 deletions(-) diff --git a/.github/workflows/pr-validation.yml b/.github/workflows/pr-validation.yml index eb5075e0b2..632dc5c31b 100644 --- a/.github/workflows/pr-validation.yml +++ b/.github/workflows/pr-validation.yml @@ -57,6 +57,5 @@ jobs: - name: Check license files run: dev/check-all-licenses - # keeping on gradle, `mvn site javadoc:javadoc`, to figure out later - name: Generate Javadoc - run: ./gradlew generateApiJavadoc + run: mvn clean -B -nsu -am -pl bookkeeper-common,bookkeeper-server,:bookkeeper-stats-api,:bookkeeper-stats-providers,:codahale-metrics-provider,:prometheus-metrics-provider install javadoc:aggregate -DskipTests -Pdelombok diff --git a/bookkeeper-common/pom.xml b/bookkeeper-common/pom.xml index dd928868cc..936cbf2d31 100644 --- a/bookkeeper-common/pom.xml +++ b/bookkeeper-common/pom.xml @@ -112,6 +112,31 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>${maven-javadoc-plugin.version}</version> + <configuration> + <sourcepath>${src.dir}</sourcepath> + <!-- Avoid for missing javadoc comments to be marked as errors --> + <doclint>none</doclint> + <subpackages>org.apache.bookkeeper.common.annotation</subpackages> + <groups> + <group> + <title>Bookkeeper Client</title> + <packages>org.apache.bookkeeper.common.annotation*</packages> + </group> + </groups> + </configuration> + <executions> + <execution> + <id>attach-javadocs</id> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> </plugins> </build> </project> diff --git a/bookkeeper-server/pom.xml b/bookkeeper-server/pom.xml index 51d7066b42..454311e195 100644 --- a/bookkeeper-server/pom.xml +++ b/bookkeeper-server/pom.xml @@ -254,6 +254,7 @@ <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <configuration> + <sourcepath>${src.dir}</sourcepath> <!-- Avoid for missing javadoc comments to be marked as errors --> <doclint>none</doclint> <subpackages>org.apache.bookkeeper.client:org.apache.bookkeeper.conf:org.apache.bookkeeper.feature</subpackages> diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/stats/package-info.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/stats/package-info.java deleted file mode 100644 index df77c581c3..0000000000 --- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/stats/package-info.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -/** - * The bookkeeper stats related classes. - */ -package org.apache.bookkeeper.stats; \ No newline at end of file diff --git a/bookkeeper-stats/pom.xml b/bookkeeper-stats/pom.xml index 862ed6f90e..390b35a0c4 100644 --- a/bookkeeper-stats/pom.xml +++ b/bookkeeper-stats/pom.xml @@ -27,7 +27,6 @@ <name>Apache BookKeeper :: Stats API</name> <url>http://maven.apache.org</url> <properties> - <spotbugs-annotations.version>4.6.0</spotbugs-annotations.version> </properties> <build> <plugins> @@ -36,6 +35,7 @@ <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <configuration> + <sourcepath>${src.dir}</sourcepath> <!-- Avoid for missing javadoc comments to be marked as errors --> <doclint>none</doclint> <subpackages>org.apache.bookkeeper.stats</subpackages> @@ -58,11 +58,5 @@ </plugins> </build> <dependencies> - <dependency> - <groupId>com.github.spotbugs</groupId> - <artifactId>spotbugs-annotations</artifactId> - <version>${spotbugs-annotations.version}</version> - <scope>provided</scope> - </dependency> </dependencies> </project> diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/stats/AlertStatsLogger.java b/bookkeeper-stats/src/main/java/org/apache/bookkeeper/stats/AlertStatsLogger.java similarity index 100% rename from bookkeeper-server/src/main/java/org/apache/bookkeeper/stats/AlertStatsLogger.java rename to bookkeeper-stats/src/main/java/org/apache/bookkeeper/stats/AlertStatsLogger.java diff --git a/pom.xml b/pom.xml index dd14ecf7c0..7b420b76da 100644 --- a/pom.xml +++ b/pom.xml @@ -113,6 +113,7 @@ <javac.target>1.8</javac.target> <redirectTestOutputToFile>true</redirectTestOutputToFile> <testRetryCount>2</testRetryCount> + <src.dir>src/main/java</src.dir> <test.additional.args /> <!-- dependencies --> @@ -187,6 +188,7 @@ <exec-maven-plugin.version>1.6.0</exec-maven-plugin.version> <license-maven-plugin.version>1.6</license-maven-plugin.version> <jacoco-maven-plugin.version>0.8.0</jacoco-maven-plugin.version> + <lombok-maven-plugin.version>1.18.20.0</lombok-maven-plugin.version> <maven-antrun-plugin.version>1.8</maven-antrun-plugin.version> <maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version> <maven-checkstyle-plugin.version>3.0.0</maven-checkstyle-plugin.version> @@ -831,6 +833,7 @@ </dependencies> <build> + <sourceDirectory>${src.dir}</sourceDirectory> <extensions> <extension> <groupId>kr.motd.maven</groupId> @@ -1151,6 +1154,44 @@ </plugins> </reporting> </profile> + <profile> + <id>delombok</id> + <properties> + <src.dir>${project.build.directory}/generated-sources/delombok</src.dir> + </properties> + <build> + <plugins> + <plugin> + <groupId>org.projectlombok</groupId> + <artifactId>lombok-maven-plugin</artifactId> + <version>${lombok-maven-plugin.version}</version> + <inherited>true</inherited> + <dependencies> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>${lombok.version}</version> + </dependency> + </dependencies> + <executions> + <execution> + <phase>generate-sources</phase> + <goals> + <goal>delombok</goal> + </goals> + <configuration> + <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory> + <outputDirectory>${project.build.directory}/generated-sources/delombok</outputDirectory> + <formatPreferences> + <pretty/> + </formatPreferences> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> <!-- the profiles below are only for development purpose --> <profile> <id>dev</id> diff --git a/site3/website/scripts/javadoc-gen.sh b/site3/website/scripts/javadoc-gen.sh index efe088e255..d516acd070 100755 --- a/site3/website/scripts/javadoc-gen.sh +++ b/site3/website/scripts/javadoc-gen.sh @@ -34,7 +34,7 @@ function build_javadoc() { if [[ "$use_gradle" == "true" ]]; then ./gradlew generateApiJavadoc else - mvn clean install javadoc:aggregate -DskipTests + mvn clean -B -nsu -am -pl bookkeeper-common,bookkeeper-server,:bookkeeper-stats-api,:bookkeeper-stats-providers,:codahale-metrics-provider,:prometheus-metrics-provider install javadoc:aggregate -DskipTests -Pdelombok fi mv $javadoc_gen_dir $javadoc_dest_dir diff --git a/stream/distributedlog/pom.xml b/stream/distributedlog/pom.xml index 151161743f..99fa4fd501 100644 --- a/stream/distributedlog/pom.xml +++ b/stream/distributedlog/pom.xml @@ -47,8 +47,9 @@ <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <configuration> + <sourcepath>${src.dir}</sourcepath> + <notimestamp>true</notimestamp> <!-- Avoid for missing javadoc comments to be marked as errors --> - <additionalparam>-notimestamp</additionalparam> <doclint>none</doclint> <groups> <group>
