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,31 +59,11 @@ case "`uname`" in
4059 MINGW* )
4160 msys=true
4261 ;;
62+ NONSTOP* )
63+ nonstop=true
64+ ;;
4365esac
4466
45- # For Cygwin, ensure paths are in UNIX format before anything is touched.
46- if $cygwin ; then
47- [ -n " $JAVA_HOME " ] && JAVA_HOME=` cygpath --unix " $JAVA_HOME " `
48- fi
49-
50- # Attempt to set APP_HOME
51- # Resolve links: $0 may be a link
52- PRG=" $0 "
53- # Need this for relative symlinks.
54- while [ -h " $PRG " ] ; do
55- ls=` ls -ld " $PRG " `
56- link=` expr " $ls " : ' .*-> \(.*\)$' `
57- if expr " $link " : ' /.*' > /dev/null; then
58- PRG=" $link "
59- else
60- PRG=` dirname " $PRG " ` " /$link "
61- fi
62- done
63- SAVED=" ` pwd` "
64- cd " ` dirname \" $PRG \" ` /" >& -
65- APP_HOME=" ` pwd -P` "
66- cd " $SAVED " >& -
67-
6867CLASSPATH=$APP_HOME /gradle/wrapper/gradle-wrapper.jar
6968
7069# Determine the Java command to use to start the JVM.
@@ -90,7 +89,7 @@ location of your Java installation."
9089fi
9190
9291# Increase the maximum file descriptors if we can.
93- if [ " $cygwin " = " false" -a " $darwin " = " false" ] ; then
92+ if [ " $cygwin " = " false" -a " $darwin " = " false" -a " $nonstop " = " false " ] ; then
9493 MAX_FD_LIMIT=` ulimit -H -n`
9594 if [ $? -eq 0 ] ; then
9695 if [ " $MAX_FD " = " maximum" -o " $MAX_FD " = " max" ] ; then
114113if $cygwin ; then
115114 APP_HOME=` cygpath --path --mixed " $APP_HOME " `
116115 CLASSPATH=` cygpath --path --mixed " $CLASSPATH " `
116+ JAVACMD=` cygpath --unix " $JAVACMD " `
117117
118118 # We build the pattern for arguments to be converted via cygpath
119119 ROOTDIRSRAW=` find -L / -maxdepth 1 -mindepth 1 -type d 2> /dev/null`
@@ -154,11 +154,19 @@ if $cygwin ; then
154154 esac
155155fi
156156
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=(" $@ " )
157+ # Escape application args
158+ save () {
159+ for i do printf %s\\ n " $i " | sed " s/'/'\\\\ ''/g;1s/^/'/;\$ s/\$ /' \\\\ /" ; done
160+ echo " "
160161}
161- eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
162- 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
163171
164- exec " $JAVACMD " " ${JVM_OPTS[@]} " -classpath " $CLASSPATH " org.gradle.wrapper.GradleWrapperMain " $ @"
172+ exec " $JAVACMD " " $@ "
0 commit comments