1- #! /usr/bin/env bash
1+ #! /usr/bin/env sh
22
33# #############################################################################
44# #
55# # Gradle start up script for UN*X
66# #
77# #############################################################################
88
9- # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
10- DEFAULT_JVM_OPTS=" "
9+ # Attempt to set APP_HOME
10+ # Resolve links: $0 may be a link
11+ PRG=" $0 "
12+ # Need this for relative symlinks.
13+ while [ -h " $PRG " ] ; do
14+ ls=` ls -ld " $PRG " `
15+ link=` expr " $ls " : ' .*-> \(.*\)$' `
16+ if expr " $link " : ' /.*' > /dev/null; then
17+ PRG=" $link "
18+ else
19+ PRG=` dirname " $PRG " ` " /$link "
20+ fi
21+ done
22+ SAVED=" ` pwd` "
23+ cd " ` dirname \" $PRG \" ` /" > /dev/null
24+ APP_HOME=" ` pwd -P` "
25+ cd " $SAVED " > /dev/null
1126
1227APP_NAME=" Gradle"
1328APP_BASE_NAME=` basename " $0 " `
1429
30+ # 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=" "
32+
1533# Use the maximum available, or set MAX_FD != -1 to use that value.
1634MAX_FD=" maximum"
1735
18- warn ( ) {
36+ warn () {
1937 echo " $* "
2038}
2139
22- die ( ) {
40+ die () {
2341 echo
2442 echo " $* "
2543 echo
@@ -30,6 +48,7 @@ die ( ) {
3048cygwin=false
3149msys=false
3250darwin=false
51+ nonstop=false
3352case " ` uname` " in
3453 CYGWIN* )
3554 cygwin=true
@@ -40,26 +59,11 @@ case "`uname`" in
4059 MINGW* )
4160 msys=true
4261 ;;
62+ NONSTOP* )
63+ nonstop=true
64+ ;;
4365esac
4466
45- # Attempt to set APP_HOME
46- # Resolve links: $0 may be a link
47- PRG=" $0 "
48- # Need this for relative symlinks.
49- while [ -h " $PRG " ] ; do
50- ls=` ls -ld " $PRG " `
51- link=` expr " $ls " : ' .*-> \(.*\)$' `
52- if expr " $link " : ' /.*' > /dev/null; then
53- PRG=" $link "
54- else
55- PRG=` dirname " $PRG " ` " /$link "
56- fi
57- done
58- SAVED=" ` pwd` "
59- cd " ` dirname \" $PRG \" ` /" > /dev/null
60- APP_HOME=" ` pwd -P` "
61- cd " $SAVED " > /dev/null
62-
6367CLASSPATH=$APP_HOME /gradle/wrapper/gradle-wrapper.jar
6468
6569# Determine the Java command to use to start the JVM.
@@ -85,7 +89,7 @@ location of your Java installation."
8589fi
8690
8791# Increase the maximum file descriptors if we can.
88- if [ " $cygwin " = " false" -a " $darwin " = " false" ] ; then
92+ if [ " $cygwin " = " false" -a " $darwin " = " false" -a " $nonstop " = " false " ] ; then
8993 MAX_FD_LIMIT=` ulimit -H -n`
9094 if [ $? -eq 0 ] ; then
9195 if [ " $MAX_FD " = " maximum" -o " $MAX_FD " = " max" ] ; then
@@ -150,11 +154,19 @@ if $cygwin ; then
150154 esac
151155fi
152156
153- # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
154- function splitJvmOpts() {
155- JVM_OPTS=(" $@ " )
157+ # Escape application args
158+ save () {
159+ for i do printf %s\\ n " $i " | sed " s/'/'\\\\ ''/g;1s/^/'/;\$ s/\$ /' \\\\ /" ; done
160+ echo " "
156161}
157- eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
158- JVM_OPTS[${# JVM_OPTS[*]} ]=" -Dorg.gradle.appname=$APP_BASE_NAME "
162+ APP_ARGS=$( save " $@ " )
163+
164+ # Collect all arguments for the java command, following the shell quoting and substitution rules
165+ eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS " \" -Dorg.gradle.appname=$APP_BASE_NAME \" " -classpath " \" $CLASSPATH \" " org.gradle.wrapper.GradleWrapperMain " $APP_ARGS "
166+
167+ # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168+ if [ " $( uname) " = " Darwin" ] && [ " $HOME " = " $PWD " ]; then
169+ cd " $( dirname " $0 " ) "
170+ fi
159171
160- exec " $JAVACMD " " ${JVM_OPTS[@]} " -classpath " $CLASSPATH " org.gradle.wrapper.GradleWrapperMain " $ @"
172+ exec " $JAVACMD " " $@ "
0 commit comments