1- #! /usr/bin/env bash
1+ #! /usr/bin/env sh
2+
3+ #
4+ # Copyright 2015 the original author or authors.
5+ #
6+ # Licensed under the Apache License, Version 2.0 (the "License");
7+ # you may not use this file except in compliance with the License.
8+ # You may obtain a copy of the License at
9+ #
10+ # https://www.apache.org/licenses/LICENSE-2.0
11+ #
12+ # Unless required by applicable law or agreed to in writing, software
13+ # distributed under the License is distributed on an "AS IS" BASIS,
14+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+ # See the License for the specific language governing permissions and
16+ # limitations under the License.
17+ #
218
319# #############################################################################
420# #
@@ -28,16 +44,16 @@ APP_NAME="Gradle"
2844APP_BASE_NAME=` basename " $0 " `
2945
3046# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31- DEFAULT_JVM_OPTS=" "
47+ DEFAULT_JVM_OPTS=' "-Xmx64m" "-Xms64m" '
3248
3349# Use the maximum available, or set MAX_FD != -1 to use that value.
3450MAX_FD=" maximum"
3551
36- warn ( ) {
52+ warn () {
3753 echo " $* "
3854}
3955
40- die ( ) {
56+ die () {
4157 echo
4258 echo " $* "
4359 echo
6682
6783CLASSPATH=$APP_HOME /gradle/wrapper/gradle-wrapper.jar
6884
85+
6986# Determine the Java command to use to start the JVM.
7087if [ -n " $JAVA_HOME " ] ; then
7188 if [ -x " $JAVA_HOME /jre/sh/java" ] ; then
@@ -109,10 +126,11 @@ if $darwin; then
109126 GRADLE_OPTS=" $GRADLE_OPTS \" -Xdock:name=$APP_NAME \" \" -Xdock:icon=$APP_HOME /media/gradle.icns\" "
110127fi
111128
112- # For Cygwin, switch paths to Windows format before running java
113- if $cygwin ; then
129+ # For Cygwin or MSYS , switch paths to Windows format before running java
130+ if [ " $cygwin " = " true " -o " $msys " = " true " ] ; then
114131 APP_HOME=` cygpath --path --mixed " $APP_HOME " `
115132 CLASSPATH=` cygpath --path --mixed " $CLASSPATH " `
133+
116134 JAVACMD=` cygpath --unix " $JAVACMD " `
117135
118136 # We build the pattern for arguments to be converted via cygpath
@@ -138,32 +156,30 @@ if $cygwin ; then
138156 else
139157 eval ` echo args$i ` =" \" $arg \" "
140158 fi
141- i=$(( i + 1 ))
159+ i=` expr $i + 1 `
142160 done
143161 case $i in
144- ( 0) set -- ;;
145- ( 1) set -- " $args0 " ;;
146- ( 2) set -- " $args0 " " $args1 " ;;
147- ( 3) set -- " $args0 " " $args1 " " $args2 " ;;
148- ( 4) set -- " $args0 " " $args1 " " $args2 " " $args3 " ;;
149- ( 5) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " ;;
150- ( 6) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " ;;
151- ( 7) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " ;;
152- ( 8) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " " $args7 " ;;
153- ( 9) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " " $args7 " " $args8 " ;;
162+ 0) set -- ;;
163+ 1) set -- " $args0 " ;;
164+ 2) set -- " $args0 " " $args1 " ;;
165+ 3) set -- " $args0 " " $args1 " " $args2 " ;;
166+ 4) set -- " $args0 " " $args1 " " $args2 " " $args3 " ;;
167+ 5) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " ;;
168+ 6) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " ;;
169+ 7) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " ;;
170+ 8) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " " $args7 " ;;
171+ 9) set -- " $args0 " " $args1 " " $args2 " " $args3 " " $args4 " " $args5 " " $args6 " " $args7 " " $args8 " ;;
154172 esac
155173fi
156174
157- # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
158- function splitJvmOpts() {
159- JVM_OPTS=(" $@ " )
175+ # Escape application args
176+ save () {
177+ for i do printf %s\\ n " $i " | sed " s/'/'\\\\ ''/g;1s/^/'/;\$ s/\$ /' \\\\ /" ; done
178+ echo " "
160179}
161- eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
162- JVM_OPTS[${# JVM_OPTS[*]} ]=" -Dorg.gradle.appname=$APP_BASE_NAME "
180+ APP_ARGS=` save " $@ " `
163181
164- # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
165- if [[ " $( uname) " == " Darwin" ]] && [[ " $HOME " == " $PWD " ]]; then
166- cd " $( dirname " $0 " ) "
167- fi
182+ # Collect all arguments for the java command, following the shell quoting and substitution rules
183+ eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS " \" -Dorg.gradle.appname=$APP_BASE_NAME \" " -classpath " \" $CLASSPATH \" " org.gradle.wrapper.GradleWrapperMain " $APP_ARGS "
168184
169- exec " $JAVACMD " " ${JVM_OPTS[@]} " -classpath " $CLASSPATH " org.gradle.wrapper.GradleWrapperMain " $ @"
185+ exec " $JAVACMD " " $@ "
0 commit comments