3 ############################################################################## 
   5 ##  Gradle start up script for UN*X 
   7 ############################################################################## 
   9 # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 
  13 APP_BASE_NAME
=`basename "$0"` 
  15 # Use the maximum available, or set MAX_FD != -1 to use that value. 
  29 # OS specific support (must be 'true' or 'false'). 
  45 # For Cygwin, ensure paths are in UNIX format before anything is touched. 
  47     [ -n 
"$JAVA_HOME" ] && JAVA_HOME
=`cygpath --unix "$JAVA_HOME"` 
  50 # Attempt to set APP_HOME 
  51 # Resolve links: $0 may be a link 
  53 # Need this for relative symlinks. 
  54 while [ -h 
"$PRG" ] ; do 
  56     link
=`expr "$ls" : '.*-> \(.*\)$'` 
  57     if expr "$link" : '/.*' > /dev
/null
; then 
  60         PRG
=`dirname "$PRG"`"/$link" 
  64 cd "`dirname \"$PRG\"`/" >&- 
  68 CLASSPATH
=$APP_HOME/gradle
/wrapper
/gradle-wrapper.jar
 
  70 # Determine the Java command to use to start the JVM. 
  71 if [ -n 
"$JAVA_HOME" ] ; then 
  72     if [ -x 
"$JAVA_HOME/jre/sh/java" ] ; then 
  73         # IBM's JDK on AIX uses strange locations for the executables 
  74         JAVACMD
="$JAVA_HOME/jre/sh/java" 
  76         JAVACMD
="$JAVA_HOME/bin/java" 
  78     if [ ! -x 
"$JAVACMD" ] ; then 
  79         die 
"ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 
  81 Please set the JAVA_HOME variable in your environment to match the 
  82 location of your Java installation." 
  86     which java 
>/dev
/null 
2>&1 || die 
"ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 
  88 Please set the JAVA_HOME variable in your environment to match the 
  89 location of your Java installation." 
  92 # Increase the maximum file descriptors if we can. 
  93 if [ "$cygwin" = "false" -a 
"$darwin" = "false" ] ; then 
  94     MAX_FD_LIMIT
=`ulimit -H -n` 
  95     if [ $? 
-eq 
0 ] ; then 
  96         if [ "$MAX_FD" = "maximum" -o 
"$MAX_FD" = "max" ] ; then 
  97             MAX_FD
="$MAX_FD_LIMIT" 
 100         if [ $? 
-ne 
0 ] ; then 
 101             warn 
"Could not set maximum file descriptor limit: $MAX_FD" 
 104         warn 
"Could not query maximum file descriptor limit: $MAX_FD_LIMIT" 
 108 # For Darwin, add options to specify how the application appears in the dock 
 110     GRADLE_OPTS
="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" 
 113 # For Cygwin, switch paths to Windows format before running java 
 115     APP_HOME
=`cygpath --path --mixed "$APP_HOME"` 
 116     CLASSPATH
=`cygpath --path --mixed "$CLASSPATH"` 
 118     # We build the pattern for arguments to be converted via cygpath 
 119     ROOTDIRSRAW
=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` 
 121     for dir 
in $ROOTDIRSRAW ; do 
 122         ROOTDIRS
="$ROOTDIRS$SEP$dir" 
 125     OURCYGPATTERN
="(^($ROOTDIRS))" 
 126     # Add a user-defined pattern to the cygpath arguments 
 127     if [ "$GRADLE_CYGPATTERN" != "" ] ; then 
 128         OURCYGPATTERN
="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" 
 130     # Now convert the arguments - kludge to limit ourselves to /bin/sh 
 133         CHECK
=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` 
 134         CHECK2
=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option 
 136         if [ $CHECK -ne 
0 ] && [ $CHECK2 -eq 
0 ] ; then                    ### Added a condition 
 137             eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` 
 139             eval `echo args$i`="\"$arg\"" 
 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" ;; 
 157 # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules 
 158 function splitJvmOpts
() { 
 161 eval splitJvmOpts 
$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS 
 162 JVM_OPTS
[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" 
 164 exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath 
"$CLASSPATH" org.gradle.wrapper.GradleWrapperMain 
"$@"