Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 0.1
-
Fix Version/s: 0.2
-
Component/s: Configuration
-
Labels:None
Description
This is directly from the mailing list:
I was complaining before about grails shell not being able to run
stuff under cygwin. I finally had a chance to take a look at what's
wrong there. It seems that it does the cygpath a bit too late. Here is
what it is now:
============================================================
#!/bin/sh
if [ -z "$JAVA_HOME" ] ; then
echo "Error: JAVA_HOME is not defined"
echo "Please set the JAVA_HOME environment variable and start Grails again"
exit 1
fi
if [ -z "$GRAILS_HOME" ] ; then
echo "Error: GRAILS_HOME is not defined"
echo "Please define GRAIL_HOME and start Grails again"
exit 1
fi
ANT_HOME=${GRAILS_HOME}/ant
GRAILS_ANT_CLASSPATH=$GRAILS_HOME/lib/bsf.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/groovy-all-1.0-RC-01-SNAPSHOT.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/org.mortbay.jetty.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/commons-logging.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/commons-el.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/javax.servlet.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/log4j-1.2.8.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/jasper-compiler.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/jasper-runtime.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/xml-apis.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/xercesImpl.jar
GRAILS_BUILD_FILE=${GRAILS_HOME}/src/grails/build.xml
ANT_BIN=${ANT_HOME}/bin/ant
BASEDIR=`pwd`
case "`uname`" in
CYGWIN*)
GRAILS_BUILD_FILE=`cygpath --windows "$GRAILS_BUILD_FILE"`;
GRAILS_ANT_CLASSPATH=`cygpath --windows -p "$GRAILS_ANT_CLASSPATH"`
BASEDIR=`cygpath --windows "$BASEDIR"`
GRAILS_HOME=`cygpath --windows "$GRAILS_HOME"`
;;
esac
${ANT_BIN} --noconfig -lib "${GRAILS_ANT_CLASSPATH}" -f
${GRAILS_BUILD_FILE} -Dbasedir=${BASEDIR} -Dgrails.home=${GRAILS_HOME}
$@
and here is what it needs to be (or at least I believe it should be):
===========================================================
#!/bin/sh
# OS specific support. $var must be set to either true or false.
cygwin=false
os400=false
case "`uname`" in
CYGWIN*) cygwin=true;;
esac
if $cygwin; then
JAVA_HOME=`cygpath --windows "$JAVA_HOME"`
GRAILS_HOME=`cygpath --windows "$GRAILS_HOME"`
fi
if [ -z "$JAVA_HOME" ] ; then
echo "Error: JAVA_HOME is not defined"
echo "Please set the JAVA_HOME environment variable and start Grails again"
exit 1
fi
if [ -z "$GRAILS_HOME" ] ; then
echo "Error: GRAILS_HOME is not defined"
echo "Please define GRAIL_HOME and start Grails again"
exit 1
fi
ANT_HOME=${GRAILS_HOME}/ant
GRAILS_ANT_CLASSPATH=$GRAILS_HOME/lib/bsf.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/groovy-all-1.0-RC-01-SNAPSHOT.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/org.mortbay.jetty.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/commons-logging.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/commons-el.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/javax.servlet.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/log4j-1.2.8.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/jasper-compiler.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/jasper-runtime.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/xml-apis.jar
GRAILS_ANT_CLASSPATH=$GRAILS_ANT_CLASSPATH:$GRAILS_HOME/lib/xercesImpl.jar
GRAILS_BUILD_FILE=${GRAILS_HOME}/src/grails/build.xml
ANT_BIN=${ANT_HOME}/bin/ant
BASEDIR=`pwd`
case "`uname`" in
CYGWIN*)
GRAILS_BUILD_FILE=`cygpath --windows "$GRAILS_BUILD_FILE"`;
GRAILS_ANT_CLASSPATH=`cygpath --windows -p "$GRAILS_ANT_CLASSPATH"`
BASEDIR=`cygpath --windows "$BASEDIR"`
GRAILS_HOME=`cygpath --windows "$GRAILS_HOME"`
;;
esac
${ANT_BIN} --noconfig -lib "${GRAILS_ANT_CLASSPATH}" -f
${GRAILS_BUILD_FILE} -Dbasedir=${BASEDIR} -Dgrails.home=${GRAILS_HOME}
$@
Patch applied.