From 058a0a670e48532b386cad9f74e9a22bbdf57bc7 Mon Sep 17 00:00:00 2001 From: Cheng Pan Date: Tue, 24 Jun 2025 20:08:37 +0800 Subject: [PATCH] HADOOP-19594. Bump Maven 3.9.11 --- BUILDING.txt | 5 ++--- dev-support/docker/Dockerfile | 4 +++- dev-support/docker/Dockerfile_aarch64 | 4 +++- dev-support/docker/Dockerfile_debian_11 | 4 +++- dev-support/docker/Dockerfile_ubuntu_24 | 4 +++- dev-support/docker/Dockerfile_windows_10 | 6 +++--- dev-support/docker/pkg-resolver/install-maven.sh | 12 ++++++------ dev-support/docker/pkg-resolver/packages.json | 6 ------ .../hadoop-auth/src/site/markdown/BuildingIt.md | 4 ++-- pom.xml | 3 +-- 10 files changed, 26 insertions(+), 26 deletions(-) diff --git a/BUILDING.txt b/BUILDING.txt index 8e7feba5857f8..f87cc8d11ead2 100644 --- a/BUILDING.txt +++ b/BUILDING.txt @@ -279,8 +279,7 @@ Maven build goals: OWASP's dependency-check plugin will scan the third party dependencies of this project for known CVEs (security vulnerabilities against them). It will produce a report in target/dependency-check-report.html. To - invoke, run 'mvn dependency-check:aggregate'. Note that this plugin - requires maven 3.1.1 or greater. + invoke, run 'mvn dependency-check:aggregate'. PMDK library build options: @@ -529,7 +528,7 @@ Requirements: * Windows 10 * JDK 1.8 -* Maven 3.0 or later (maven.apache.org) +* Maven 3.3 or later (maven.apache.org) * Boost 1.86.0 (boost.org) * Protocol Buffers 3.21.12 (https://github.com/protocolbuffers/protobuf/tags) * CMake 3.19 or newer (cmake.org) diff --git a/dev-support/docker/Dockerfile b/dev-support/docker/Dockerfile index 6beef860a9b39..5c97f80b1e9bc 100644 --- a/dev-support/docker/Dockerfile +++ b/dev-support/docker/Dockerfile @@ -61,7 +61,8 @@ ENV PYTHONIOENCODING=utf-8 ###### # Set env vars required to build Hadoop ###### -ENV MAVEN_HOME /usr +ENV MAVEN_HOME=/opt/maven +ENV PATH="${PATH}:${MAVEN_HOME}/bin" # JAVA_HOME must be set in Maven >= 3.5.0 (MNG-6003) ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 @@ -88,6 +89,7 @@ ENV HADOOP_SKIP_YETUS_VERIFICATION true # Install packages #### RUN pkg-resolver/install-common-pkgs.sh +RUN pkg-resolver/install-maven.sh ubuntu:focal RUN pkg-resolver/install-spotbugs.sh ubuntu:focal RUN pkg-resolver/install-boost.sh ubuntu:focal RUN pkg-resolver/install-protobuf.sh ubuntu:focal diff --git a/dev-support/docker/Dockerfile_aarch64 b/dev-support/docker/Dockerfile_aarch64 index b9249f5aec9d3..b341d60e1398b 100644 --- a/dev-support/docker/Dockerfile_aarch64 +++ b/dev-support/docker/Dockerfile_aarch64 @@ -62,7 +62,8 @@ ENV PYTHONIOENCODING=utf-8 ###### # Set env vars required to build Hadoop ###### -ENV MAVEN_HOME /usr +ENV MAVEN_HOME=/opt/maven +ENV PATH="${PATH}:${MAVEN_HOME}/bin" # JAVA_HOME must be set in Maven >= 3.5.0 (MNG-6003) ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-arm64 @@ -92,6 +93,7 @@ ENV QT_QPA_PLATFORM offscreen # Install packages #### RUN pkg-resolver/install-common-pkgs.sh +RUN pkg-resolver/install-maven.sh ubuntu:focal::arch64 RUN pkg-resolver/install-spotbugs.sh ubuntu:focal::arch64 RUN pkg-resolver/install-boost.sh ubuntu:focal::arch64 RUN pkg-resolver/install-protobuf.sh ubuntu:focal::arch64 diff --git a/dev-support/docker/Dockerfile_debian_11 b/dev-support/docker/Dockerfile_debian_11 index 2dc47eee6ac6e..113919531641c 100644 --- a/dev-support/docker/Dockerfile_debian_11 +++ b/dev-support/docker/Dockerfile_debian_11 @@ -54,7 +54,8 @@ RUN apt-get -q update \ ###### # Set env vars required to build Hadoop ###### -ENV MAVEN_HOME=/usr +ENV MAVEN_HOME=/opt/maven +ENV PATH="${PATH}:${MAVEN_HOME}/bin" # JAVA_HOME must be set in Maven >= 3.5.0 (MNG-6003) ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 @@ -80,6 +81,7 @@ ENV HADOOP_SKIP_YETUS_VERIFICATION=true #### # Install packages #### +RUN pkg-resolver/install-maven.sh debian:11 RUN pkg-resolver/install-cmake.sh debian:11 RUN pkg-resolver/install-spotbugs.sh debian:11 RUN pkg-resolver/install-boost.sh debian:11 diff --git a/dev-support/docker/Dockerfile_ubuntu_24 b/dev-support/docker/Dockerfile_ubuntu_24 index 28ab04c3e09fe..1b4689e1d7334 100644 --- a/dev-support/docker/Dockerfile_ubuntu_24 +++ b/dev-support/docker/Dockerfile_ubuntu_24 @@ -61,7 +61,8 @@ ENV PYTHONIOENCODING=utf-8 ###### # Set env vars required to build Hadoop ###### -ENV MAVEN_HOME /usr +ENV MAVEN_HOME=/opt/maven +ENV PATH="${PATH}:${MAVEN_HOME}/bin" # JAVA_HOME must be set in Maven >= 3.5.0 (MNG-6003) ENV JAVA_HOME /usr/lib/jvm/java-17-openjdk-amd64 @@ -87,6 +88,7 @@ ENV HADOOP_SKIP_YETUS_VERIFICATION true #### # Install packages #### +RUN pkg-resolver/install-maven.sh ubuntu:noble RUN pkg-resolver/install-spotbugs.sh ubuntu:noble RUN pkg-resolver/install-boost.sh ubuntu:noble RUN pkg-resolver/install-protobuf.sh ubuntu:noble diff --git a/dev-support/docker/Dockerfile_windows_10 b/dev-support/docker/Dockerfile_windows_10 index 58f3509750f62..9ca20fd892c94 100644 --- a/dev-support/docker/Dockerfile_windows_10 +++ b/dev-support/docker/Dockerfile_windows_10 @@ -62,8 +62,8 @@ RUN powershell Invoke-WebRequest -URI https://cdn.azul.com/zulu/bin/zulu8.62.0.1 RUN powershell Expand-Archive -Path $Env:TEMP\zulu8.62.0.19-ca-jdk8.0.332-win_x64.zip -DestinationPath "C:\Java" # Install Apache Maven. -RUN powershell Invoke-WebRequest -URI https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.zip -OutFile $Env:TEMP\apache-maven-3.8.8-bin.zip -RUN powershell Expand-Archive -Path $Env:TEMP\apache-maven-3.8.8-bin.zip -DestinationPath "C:\Maven" +RUN powershell Invoke-WebRequest -URI https://archive.apache.org/dist/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.zip -OutFile $Env:TEMP\apache-maven-3.9.11-bin.zip +RUN powershell Expand-Archive -Path $Env:TEMP\apache-maven-3.9.11-bin.zip -DestinationPath "C:\Maven" # Install CMake 3.19.0. RUN powershell Invoke-WebRequest -URI https://cmake.org/files/v3.19/cmake-3.19.0-win64-x64.zip -OutFile $Env:TEMP\cmake-3.19.0-win64-x64.zip @@ -141,7 +141,7 @@ ENV MAVEN_OPTS '-Xmx2048M -Xss128M' ENV IS_WINDOWS 1 RUN setx PATH "%PATH%;%ALLUSERSPROFILE%\chocolatey\bin" RUN setx PATH "%PATH%;%JAVA_HOME%\bin" -RUN setx PATH "%PATH%;C:\Maven\apache-maven-3.8.8\bin" +RUN setx PATH "%PATH%;C:\Maven\apache-maven-3.9.11\bin" RUN setx PATH "%PATH%;C:\CMake\cmake-3.19.0-win64-x64\bin" RUN setx PATH "%PATH%;C:\ZStd" RUN setx PATH "%PATH%;C:\Program Files\Git\usr\bin" diff --git a/dev-support/docker/pkg-resolver/install-maven.sh b/dev-support/docker/pkg-resolver/install-maven.sh index fb7d4a5be77dc..16ecc8cfb4eb2 100644 --- a/dev-support/docker/pkg-resolver/install-maven.sh +++ b/dev-support/docker/pkg-resolver/install-maven.sh @@ -27,22 +27,22 @@ if [ $? -eq 1 ]; then exit 1 fi -default_version="3.6.3" +default_version="3.9.11" version_to_install=$default_version if [ -n "$2" ]; then version_to_install="$2" fi -if [ "$version_to_install" != "3.6.3" ]; then +if [ "$version_to_install" != "3.9.11" ]; then echo "WARN: Don't know how to install version $version_to_install, installing the default version $default_version instead" version_to_install=$default_version fi -if [ "$version_to_install" == "3.6.3" ]; then +if [ "$version_to_install" == "3.9.11" ]; then mkdir -p /opt/maven /tmp/maven && - curl -L -s -S https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.tar.gz \ - -o /tmp/maven/apache-maven-3.6.3-bin.tar.gz && - tar xzf /tmp/maven/apache-maven-3.6.3-bin.tar.gz --strip-components 1 -C /opt/maven + curl -L -s -S https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.tar.gz \ + -o /tmp/maven/apache-maven-3.9.11-bin.tar.gz && + tar xzf /tmp/maven/apache-maven-3.9.11-bin.tar.gz --strip-components 1 -C /opt/maven else echo "ERROR: Don't know how to install version $version_to_install" exit 1 diff --git a/dev-support/docker/pkg-resolver/packages.json b/dev-support/docker/pkg-resolver/packages.json index 08b5cb6607e98..850f79c971389 100644 --- a/dev-support/docker/pkg-resolver/packages.json +++ b/dev-support/docker/pkg-resolver/packages.json @@ -255,12 +255,6 @@ "ubuntu:focal::arch64": "make", "rockylinux:8": "make" }, - "maven": { - "debian:11": "maven", - "ubuntu:focal": "maven", - "ubuntu:noble": "maven", - "ubuntu:focal::arch64": "maven" - }, "java": { "debian:11": [ "openjdk-11-jdk", diff --git a/hadoop-common-project/hadoop-auth/src/site/markdown/BuildingIt.md b/hadoop-common-project/hadoop-auth/src/site/markdown/BuildingIt.md index 52d9ddc1558d2..85f7c9f230cf2 100644 --- a/hadoop-common-project/hadoop-auth/src/site/markdown/BuildingIt.md +++ b/hadoop-common-project/hadoop-auth/src/site/markdown/BuildingIt.md @@ -18,8 +18,8 @@ Hadoop Auth, Java HTTP SPNEGO - Building It Requirements ------------ -* Java 7+ -* Maven 3+ +* JDK 1.8 +* Maven 3.3 or later * Kerberos KDC (for running Kerberos test cases) Building diff --git a/pom.xml b/pom.xml index ac50512d128d6..68163a4db6746 100644 --- a/pom.xml +++ b/pom.xml @@ -617,8 +617,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/x dependencies of this project for known CVEs (security vulnerabilities against them). It will produce a report in target/dependency-check-report.html. To invoke, run - 'mvn dependency-check:aggregate'. Note that this plugin - requires maven 3.1.1 or greater. + 'mvn dependency-check:aggregate'. --> org.owasp dependency-check-maven