Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100755 165 lines (144 sloc) 5.075 kb
cd3bb91 Tim Berglund Initial commit
tlberglund authored
1 #!/bin/bash
2
3 ##############################################################################
4 ##
5 ## Gradle start up script for UN*X
6 ##
7 ##############################################################################
8
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=""
11
12 APP_NAME="Gradle"
13 APP_BASE_NAME=`basename "$0"`
14
15 # Use the maximum available, or set MAX_FD != -1 to use that value.
16 MAX_FD="maximum"
17
18 warn ( ) {
19 echo "$*"
20 }
21
22 die ( ) {
23 echo
24 echo "$*"
25 echo
26 exit 1
27 }
28
29 # OS specific support (must be 'true' or 'false').
30 cygwin=false
31 msys=false
32 darwin=false
33 case "`uname`" in
34 CYGWIN* )
35 cygwin=true
36 ;;
37 Darwin* )
38 darwin=true
39 ;;
40 MINGW* )
41 msys=true
42 ;;
43 esac
44
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
68 CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
69
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"
75 else
76 JAVACMD="$JAVA_HOME/bin/java"
77 fi
78 if [ ! -x "$JAVACMD" ] ; then
79 die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
80
81 Please set the JAVA_HOME variable in your environment to match the
82 location of your Java installation."
83 fi
84 else
85 JAVACMD="java"
86 which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
87
88 Please set the JAVA_HOME variable in your environment to match the
89 location of your Java installation."
90 fi
91
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"
98 fi
99 ulimit -n $MAX_FD
100 if [ $? -ne 0 ] ; then
101 warn "Could not set maximum file descriptor limit: $MAX_FD"
102 fi
103 else
104 warn "Could not query businessSystem maximum file descriptor limit: $MAX_FD_LIMIT"
105 fi
106 fi
107
7145ac0 Tim Berglund Upgraded the template to Ratpack 0.5.1.
tlberglund authored
108 # For Darwin, add options to specify how the application appears in the dock
cd3bb91 Tim Berglund Initial commit
tlberglund authored
109 if $darwin; then
7145ac0 Tim Berglund Upgraded the template to Ratpack 0.5.1.
tlberglund authored
110 JAVA_OPTS="$JAVA_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
cd3bb91 Tim Berglund Initial commit
tlberglund authored
111 fi
112
113 # For Cygwin, switch paths to Windows format before running java
114 if $cygwin ; then
115 APP_HOME=`cygpath --path --mixed "$APP_HOME"`
116 CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
117
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`
120 SEP=""
121 for dir in $ROOTDIRSRAW ; do
122 ROOTDIRS="$ROOTDIRS$SEP$dir"
123 SEP="|"
124 done
125 OURCYGPATTERN="(^($ROOTDIRS))"
126 # Add a user-defined pattern to the cygpath arguments
127 if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 fi
130 # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 i=0
132 for arg in "$@" ; do
133 CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135
136 if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 else
139 eval `echo args$i`="\"$arg\""
140 fi
141 i=$((i+1))
142 done
143 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" ;;
154 esac
155 fi
156
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=("$@")
160 }
161 eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
162 JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
163
164 exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
Something went wrong with that request. Please try again.