mirror of
				https://github.com/spring-projects/spring-data-elasticsearch.git
				synced 2025-10-30 22:28:47 +00:00 
			
		
		
		
	Upgrade maven wrapper to use maven 3.8.1.
Original Pull Request #1878 Closes #1877
This commit is contained in:
		
							parent
							
								
									f74dd879df
								
							
						
					
					
						commit
						d2e3ea26b8
					
				
							
								
								
									
										117
									
								
								.mvn/wrapper/MavenWrapperDownloader.java
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										117
									
								
								.mvn/wrapper/MavenWrapperDownloader.java
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,117 @@ | ||||
| /* | ||||
|  * Copyright 2007-present the original author or authors. | ||||
|  * | ||||
|  * Licensed 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. | ||||
|  */ | ||||
| import java.net.*; | ||||
| import java.io.*; | ||||
| import java.nio.channels.*; | ||||
| import java.util.Properties; | ||||
| 
 | ||||
| public class MavenWrapperDownloader { | ||||
| 
 | ||||
|     private static final String WRAPPER_VERSION = "0.5.6"; | ||||
|     /** | ||||
|      * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided. | ||||
|      */ | ||||
|     private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" | ||||
|         + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; | ||||
| 
 | ||||
|     /** | ||||
|      * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to | ||||
|      * use instead of the default one. | ||||
|      */ | ||||
|     private static final String MAVEN_WRAPPER_PROPERTIES_PATH = | ||||
|             ".mvn/wrapper/maven-wrapper.properties"; | ||||
| 
 | ||||
|     /** | ||||
|      * Path where the maven-wrapper.jar will be saved to. | ||||
|      */ | ||||
|     private static final String MAVEN_WRAPPER_JAR_PATH = | ||||
|             ".mvn/wrapper/maven-wrapper.jar"; | ||||
| 
 | ||||
|     /** | ||||
|      * Name of the property which should be used to override the default download url for the wrapper. | ||||
|      */ | ||||
|     private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; | ||||
| 
 | ||||
|     public static void main(String args[]) { | ||||
|         System.out.println("- Downloader started"); | ||||
|         File baseDirectory = new File(args[0]); | ||||
|         System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); | ||||
| 
 | ||||
|         // If the maven-wrapper.properties exists, read it and check if it contains a custom | ||||
|         // wrapperUrl parameter. | ||||
|         File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); | ||||
|         String url = DEFAULT_DOWNLOAD_URL; | ||||
|         if(mavenWrapperPropertyFile.exists()) { | ||||
|             FileInputStream mavenWrapperPropertyFileInputStream = null; | ||||
|             try { | ||||
|                 mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); | ||||
|                 Properties mavenWrapperProperties = new Properties(); | ||||
|                 mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); | ||||
|                 url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); | ||||
|             } catch (IOException e) { | ||||
|                 System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); | ||||
|             } finally { | ||||
|                 try { | ||||
|                     if(mavenWrapperPropertyFileInputStream != null) { | ||||
|                         mavenWrapperPropertyFileInputStream.close(); | ||||
|                     } | ||||
|                 } catch (IOException e) { | ||||
|                     // Ignore ... | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         System.out.println("- Downloading from: " + url); | ||||
| 
 | ||||
|         File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); | ||||
|         if(!outputFile.getParentFile().exists()) { | ||||
|             if(!outputFile.getParentFile().mkdirs()) { | ||||
|                 System.out.println( | ||||
|                         "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); | ||||
|             } | ||||
|         } | ||||
|         System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); | ||||
|         try { | ||||
|             downloadFileFromURL(url, outputFile); | ||||
|             System.out.println("Done"); | ||||
|             System.exit(0); | ||||
|         } catch (Throwable e) { | ||||
|             System.out.println("- Error downloading"); | ||||
|             e.printStackTrace(); | ||||
|             System.exit(1); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     private static void downloadFileFromURL(String urlString, File destination) throws Exception { | ||||
|         if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { | ||||
|             String username = System.getenv("MVNW_USERNAME"); | ||||
|             char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); | ||||
|             Authenticator.setDefault(new Authenticator() { | ||||
|                 @Override | ||||
|                 protected PasswordAuthentication getPasswordAuthentication() { | ||||
|                     return new PasswordAuthentication(username, password); | ||||
|                 } | ||||
|             }); | ||||
|         } | ||||
|         URL website = new URL(urlString); | ||||
|         ReadableByteChannel rbc; | ||||
|         rbc = Channels.newChannel(website.openStream()); | ||||
|         FileOutputStream fos = new FileOutputStream(destination); | ||||
|         fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); | ||||
|         fos.close(); | ||||
|         rbc.close(); | ||||
|     } | ||||
| 
 | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								.mvn/wrapper/maven-wrapper.jar
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.mvn/wrapper/maven-wrapper.jar
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										3
									
								
								.mvn/wrapper/maven-wrapper.properties
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										3
									
								
								.mvn/wrapper/maven-wrapper.properties
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							| @ -1 +1,2 @@ | ||||
| distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip | ||||
| distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.1/apache-maven-3.8.1-bin.zip | ||||
| wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar | ||||
|  | ||||
							
								
								
									
										36
									
								
								mvnw
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										36
									
								
								mvnw
									
									
									
									
										vendored
									
									
								
							| @ -8,7 +8,7 @@ | ||||
| # "License"); you may not use this file except in compliance | ||||
| # with the License.  You may obtain a copy of the License at | ||||
| # | ||||
| #    https://www.apache.org/licenses/LICENSE-2.0 | ||||
| #    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 | ||||
| @ -19,7 +19,7 @@ | ||||
| # ---------------------------------------------------------------------------- | ||||
| 
 | ||||
| # ---------------------------------------------------------------------------- | ||||
| # Maven2 Start Up Batch script | ||||
| # Maven Start Up Batch script | ||||
| # | ||||
| # Required ENV vars: | ||||
| # ------------------ | ||||
| @ -114,7 +114,6 @@ if $mingw ; then | ||||
|     M2_HOME="`(cd "$M2_HOME"; pwd)`" | ||||
|   [ -n "$JAVA_HOME" ] && | ||||
|     JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" | ||||
|   # TODO classpath? | ||||
| fi | ||||
| 
 | ||||
| if [ -z "$JAVA_HOME" ]; then | ||||
| @ -212,7 +211,11 @@ else | ||||
|     if [ "$MVNW_VERBOSE" = true ]; then | ||||
|       echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." | ||||
|     fi | ||||
|     jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar" | ||||
|     if [ -n "$MVNW_REPOURL" ]; then | ||||
|       jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" | ||||
|     else | ||||
|       jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" | ||||
|     fi | ||||
|     while IFS="=" read key value; do | ||||
|       case "$key" in (wrapperUrl) jarUrl="$value"; break ;; | ||||
|       esac | ||||
| @ -221,22 +224,38 @@ else | ||||
|       echo "Downloading from: $jarUrl" | ||||
|     fi | ||||
|     wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" | ||||
|     if $cygwin; then | ||||
|       wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` | ||||
|     fi | ||||
| 
 | ||||
|     if command -v wget > /dev/null; then | ||||
|         if [ "$MVNW_VERBOSE" = true ]; then | ||||
|           echo "Found wget ... using wget" | ||||
|         fi | ||||
|         wget "$jarUrl" -O "$wrapperJarPath" | ||||
|         if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then | ||||
|             wget "$jarUrl" -O "$wrapperJarPath" | ||||
|         else | ||||
|             wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" | ||||
|         fi | ||||
|     elif command -v curl > /dev/null; then | ||||
|         if [ "$MVNW_VERBOSE" = true ]; then | ||||
|           echo "Found curl ... using curl" | ||||
|         fi | ||||
|         curl -o "$wrapperJarPath" "$jarUrl" | ||||
|         if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then | ||||
|             curl -o "$wrapperJarPath" "$jarUrl" -f | ||||
|         else | ||||
|             curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f | ||||
|         fi | ||||
| 
 | ||||
|     else | ||||
|         if [ "$MVNW_VERBOSE" = true ]; then | ||||
|           echo "Falling back to using Java to download" | ||||
|         fi | ||||
|         javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" | ||||
|         # For Cygwin, switch paths to Windows format before running javac | ||||
|         if $cygwin; then | ||||
|           javaClass=`cygpath --path --windows "$javaClass"` | ||||
|         fi | ||||
|         if [ -e "$javaClass" ]; then | ||||
|             if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then | ||||
|                 if [ "$MVNW_VERBOSE" = true ]; then | ||||
| @ -277,6 +296,11 @@ if $cygwin; then | ||||
|     MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` | ||||
| fi | ||||
| 
 | ||||
| # Provide a "standardized" way to retrieve the CLI args that will | ||||
| # work with both Windows and non-Windows executions. | ||||
| MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" | ||||
| export MAVEN_CMD_LINE_ARGS | ||||
| 
 | ||||
| WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain | ||||
| 
 | ||||
| exec "$JAVACMD" \ | ||||
|  | ||||
							
								
								
									
										45
									
								
								mvnw.cmd
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										45
									
								
								mvnw.cmd
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							| @ -7,7 +7,7 @@ | ||||
| @REM "License"); you may not use this file except in compliance | ||||
| @REM with the License.  You may obtain a copy of the License at | ||||
| @REM | ||||
| @REM    https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @REM    http://www.apache.org/licenses/LICENSE-2.0 | ||||
| @REM | ||||
| @REM Unless required by applicable law or agreed to in writing, | ||||
| @REM software distributed under the License is distributed on an | ||||
| @ -18,7 +18,7 @@ | ||||
| @REM ---------------------------------------------------------------------------- | ||||
| 
 | ||||
| @REM ---------------------------------------------------------------------------- | ||||
| @REM Maven2 Start Up Batch script | ||||
| @REM Maven Start Up Batch script | ||||
| @REM | ||||
| @REM Required ENV vars: | ||||
| @REM JAVA_HOME - location of a JDK home dir | ||||
| @ -26,7 +26,7 @@ | ||||
| @REM Optional ENV vars | ||||
| @REM M2_HOME - location of maven2's installed home dir | ||||
| @REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands | ||||
| @REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending | ||||
| @REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending | ||||
| @REM MAVEN_OPTS - parameters passed to the Java VM when running Maven | ||||
| @REM     e.g. to debug Maven itself, use | ||||
| @REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 | ||||
| @ -37,7 +37,7 @@ | ||||
| @echo off | ||||
| @REM set title of command window | ||||
| title %0 | ||||
| @REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' | ||||
| @REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' | ||||
| @if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO% | ||||
| 
 | ||||
| @REM set %HOME% to equivalent of $HOME | ||||
| @ -120,23 +120,44 @@ SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" | ||||
| set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" | ||||
| set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain | ||||
| 
 | ||||
| set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar" | ||||
| FOR /F "tokens=1,2 delims==" %%A IN (%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties) DO ( | ||||
| 	IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B  | ||||
| set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" | ||||
| 
 | ||||
| FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( | ||||
|     IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B | ||||
| ) | ||||
| 
 | ||||
| @REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central | ||||
| @REM This allows using the maven wrapper in projects that prohibit checking in binary data. | ||||
| if exist %WRAPPER_JAR% ( | ||||
|     echo Found %WRAPPER_JAR% | ||||
|     if "%MVNW_VERBOSE%" == "true" ( | ||||
|         echo Found %WRAPPER_JAR% | ||||
|     ) | ||||
| ) else ( | ||||
|     echo Couldn't find %WRAPPER_JAR%, downloading it ... | ||||
| 	echo Downloading from: %DOWNLOAD_URL% | ||||
|     powershell -Command "(New-Object Net.WebClient).DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')" | ||||
|     echo Finished downloading %WRAPPER_JAR% | ||||
|     if not "%MVNW_REPOURL%" == "" ( | ||||
|         SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" | ||||
|     ) | ||||
|     if "%MVNW_VERBOSE%" == "true" ( | ||||
|         echo Couldn't find %WRAPPER_JAR%, downloading it ... | ||||
|         echo Downloading from: %DOWNLOAD_URL% | ||||
|     ) | ||||
| 
 | ||||
|     powershell -Command "&{"^ | ||||
| 		"$webclient = new-object System.Net.WebClient;"^ | ||||
| 		"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ | ||||
| 		"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ | ||||
| 		"}"^ | ||||
| 		"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ | ||||
| 		"}" | ||||
|     if "%MVNW_VERBOSE%" == "true" ( | ||||
|         echo Finished downloading %WRAPPER_JAR% | ||||
|     ) | ||||
| ) | ||||
| @REM End of extension | ||||
| 
 | ||||
| @REM Provide a "standardized" way to retrieve the CLI args that will | ||||
| @REM work with both Windows and non-Windows executions. | ||||
| set MAVEN_CMD_LINE_ARGS=%* | ||||
| 
 | ||||
| %MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* | ||||
| if ERRORLEVEL 1 goto error | ||||
| goto end | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user