git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911462 13f79535-47bb-0310-9956-ffa450edef68tags/REL_5_2_4
@@ -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 | |||
@@ -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 |
@@ -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. | |||
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. |
@@ -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 |