aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPJ Fanning <fanningpj@apache.org>2023-08-05 13:14:56 +0000
committerPJ Fanning <fanningpj@apache.org>2023-08-05 13:14:56 +0000
commitc4e7b5174c1875220132941d8508da7d2db2b1dd (patch)
treee89fa681652d2806dbfdf707186a6beab2a86944
parent57d746827f48710f094b09f5d4a24090be97d4fb (diff)
downloadpoi-c4e7b5174c1875220132941d8508da7d2db2b1dd.tar.gz
poi-c4e7b5174c1875220132941d8508da7d2db2b1dd.zip
remove gradle-wrapper jar because it is against ASF policy to ship jars in source releases
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911462 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin62076 -> 0 bytes
-rwxr-xr-xgradlew13
-rw-r--r--gradlew.bat92
-rw-r--r--legal/LICENSE4
-rw-r--r--wrapper.gradle85
5 files changed, 101 insertions, 93 deletions
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index c1962a79e2..0000000000
--- a/gradle/wrapper/gradle-wrapper.jar
+++ /dev/null
Binary files differ
diff --git a/gradlew b/gradlew
index aeb74cbb43..4e47bba686 100755
--- a/gradlew
+++ b/gradlew
@@ -111,6 +111,19 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
+
+# Loop in case we encounter an error.
+for attempt in 1 2 3; do
+ if [ ! -e "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" ]; then
+ if ! curl -s -S --retry 3 -L -o "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" "https://raw.githubusercontent.com/gradle/gradle/v8.2.1/gradle/wrapper/gradle-wrapper.jar"; then
+ rm -f "$APP_HOME/gradle/wrapper/gradle-wrapper.jar"
+ # Pause for a bit before looping in case the server throttled us.
+ sleep 5
+ continue
+ fi
+ fi
+done
+
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
diff --git a/gradlew.bat b/gradlew.bat
deleted file mode 100644
index 6689b85bee..0000000000
--- a/gradlew.bat
+++ /dev/null
@@ -1,92 +0,0 @@
-@rem
-@rem Copyright 2015 the original author or authors.
-@rem
-@rem Licensed under the Apache License, Version 2.0 (the "License");
-@rem you may not use this file except in compliance with the License.
-@rem You may obtain a copy of the License at
-@rem
-@rem https://www.apache.org/licenses/LICENSE-2.0
-@rem
-@rem Unless required by applicable law or agreed to in writing, software
-@rem distributed under the License is distributed on an "AS IS" BASIS,
-@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@rem See the License for the specific language governing permissions and
-@rem limitations under the License.
-@rem
-
-@if "%DEBUG%"=="" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%"=="" set DIRNAME=.
-@rem This is normally unused
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Resolve any "." and ".." in APP_HOME to make it shorter.
-for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if %ERRORLEVEL% equ 0 goto execute
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
-
-:end
-@rem End local scope for the variables with windows NT shell
-if %ERRORLEVEL% equ 0 goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-set EXIT_CODE=%ERRORLEVEL%
-if %EXIT_CODE% equ 0 set EXIT_CODE=1
-if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
-exit /b %EXIT_CODE%
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/legal/LICENSE b/legal/LICENSE
index 6249db3769..990301df8a 100644
--- a/legal/LICENSE
+++ b/legal/LICENSE
@@ -263,4 +263,6 @@ Copyright (c) 2011-2023 Lightbend, Inc.
The POI Source Release bundles the Gradle Wrapper. (https://docs.gradle.org/current/userguide/gradle_wrapper.html)
This is released under the Apache License, v2.0.
-Copyright © 2015-2021 the original authors. \ No newline at end of file
+Copyright © 2015-2021 the original authors.
+
+The wrapper.gradle file was developed by the Apache Kafka project and is released under the Apache License, v2.0.
diff --git a/wrapper.gradle b/wrapper.gradle
new file mode 100644
index 0000000000..2dfca19e74
--- /dev/null
+++ b/wrapper.gradle
@@ -0,0 +1,85 @@
+/*
+ * 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.
+ */
+
+// This file contains tasks for the gradle wrapper generation.
+
+// Ensure the wrapper script is generated based on the version defined in the project
+// and not the version installed on the machine running the task.
+// Read more about the wrapper here: https://docs.gradle.org/current/userguide/gradle_wrapper.html
+wrapper {
+ gradleVersion = project.gradleVersion
+ distributionType = Wrapper.DistributionType.ALL
+}
+
+// Custom task to inject support for downloading the gradle wrapper jar if it doesn't exist.
+// This allows us to avoid checking in the jar to our repository.
+// Additionally adds a license header to the wrapper while editing the file contents.
+task bootstrapWrapper() {
+ // In the doLast block so this runs when the task is called and not during project configuration.
+ doLast {
+ def wrapperBasePath = "\$APP_HOME/gradle/wrapper"
+ def wrapperJarPath = wrapperBasePath + "/gradle-wrapper.jar"
+
+ // Add a trailing zero to the version if needed.
+ def fullVersion = project.gradleVersion.count(".") == 1 ? "${project.gradleVersion}.0" : versions.gradle
+ // Leverages the wrapper jar checked into the gradle project on github because the jar isn't
+ // available elsewhere. Using raw.githubusercontent.com instead of github.com because
+ // github.com servers deprecated TLSv1/TLSv1.1 support some time ago, so older versions
+ // of curl (built against OpenSSL library that doesn't support TLSv1.2) would fail to
+ // fetch the jar.
+ def wrapperBaseUrl = "https://raw.githubusercontent.com/gradle/gradle/v$fullVersion/gradle/wrapper"
+ def wrapperJarUrl = wrapperBaseUrl + "/gradle-wrapper.jar"
+
+ def bootstrapString = """
+ # Loop in case we encounter an error.
+ for attempt in 1 2 3; do
+ if [ ! -e "$wrapperJarPath" ]; then
+ if ! curl -s -S --retry 3 -L -o "$wrapperJarPath" "$wrapperJarUrl"; then
+ rm -f "$wrapperJarPath"
+ # Pause for a bit before looping in case the server throttled us.
+ sleep 5
+ continue
+ fi
+ fi
+ done
+ """.stripIndent()
+
+ def wrapperScript = wrapper.scriptFile
+ def wrapperLines = wrapperScript.readLines()
+ wrapperScript.withPrintWriter { out ->
+ def bootstrapWritten = false
+ wrapperLines.each { line ->
+ // Print the wrapper bootstrap before the first usage of the wrapper jar.
+ if (!bootstrapWritten && line.contains("gradle-wrapper.jar")) {
+ out.println(bootstrapString)
+ bootstrapWritten = true
+ }
+ out.print(line)
+ out.println()
+ }
+ }
+ }
+}
+wrapper.finalizedBy bootstrapWrapper
+
+// Remove the generated batch file since we don't test building in the Windows environment.
+task removeWindowsScript(type: Delete) {
+ delete "$rootDir/gradlew.bat"
+}
+wrapper.finalizedBy removeWindowsScript