我最近使用自制软件下载了 Play。我第一次这样做时,brew 公式下载了旧版本的 Play。我修改了公式以下载最新版本(2.2.0)并成功下载。但是,我在下载时遇到了一些问题。
首先,从终端调用播放时,我一直收到错误消息:“无法访问 jarfile ../Cellar/play2/2.0-RC3/bin/framework/sbt/sbt-launch.jar”。我在网上搜索并在这个论坛中找到了解决方案。我根据论坛上某人的建议编辑了我的播放文件。我的播放文件现在看起来像这样:
#! /usr/bin/env sh
#PRG="$0"
# resolve relative/absolute symlinks
#while [ -h "$PRG" ] ; do
# ls=`ls -ld "$PRG"`
#link=`expr "$ls" : '.*-> \(.*\)$'`
#if expr "$link" : '/.*' > /dev/null; then
# PRG="$link"
#else
# PRG="`dirname "$PRG"`/$link"
#fi
#done
#dir=`dirname $0` && dir=$dir/`dirname $PRG`
# Extract possibly relative directory to invoked file
RDIR="$(dirname "$0")"
# Convert to absolute directory
ADIR="$(cd "$RDIR"; pwd)"
# PRG is now absolute path to invoked file
PRG="$ADIR/$(basename "$0")"
# Resolve symlink(s)
while [ -h "$PRG" ] ; do
PRG=`readlink "$PRG"`
done
if [ -z "$JAVA_HOME" ]; then
JAVA="java"
else
JAVA="$JAVA_HOME/bin/java"
fi
# dir is the absolute dir of the resolved link(s)
dir=$(cd "$(dirname "$0")"; cd "$(dirname "$PRG")"; pwd)
if [ -f conf/application.conf -o -f conf/reference.conf ] || [ -d project ]; then
if test "$1" = "clean-all"; then
rm -rf target
rm -rf tmp
rm -rf logs
rm -rf dist
rm -rf project/project
rm -rf project/target
if [ $# -ne 1 ]
then
shift
else
echo "[info] Done!"
exit 0
fi
fi
if test "$1" = "stop"; then
if [ -f RUNNING_PID ]; then
echo "[info] Stopping application (with PID `cat RUNNING_PID`)..."
kill `cat RUNNING_PID`
RESULT=$?
if test "$RESULT" = 0; then
echo "[info] Done!"
exit 0
else
echo "[\033[31merror\033[0m] Failed ($RESULT)"
exit $RESULT
fi
else
echo "[\033[31merror\033[0m] No RUNNING_PID file. Is this application running?"
exit 1
fi
fi
if test "$1" = "debug"; then
JPDA_PORT="9999"
shift
fi
if [ -n "$1" ]; then
JPDA_PORT="${JPDA_PORT}" $dir/../libexec/framework/build "$@"
else
JPDA_PORT="${JPDA_PORT}" $dir/../libexec/framework/build play
fi
else
"$JAVA" -Dplay.home=$dir/../libexec/framework -Dsbt.boot.properties=$dir/../libexec/framework/sbt/play.boot.properties ${PLAY_OPTS} -jar $dir/../libexec/framework/sbt/sbt-launch.jar "$@"
fi
这是一个很好的解决方案,解决了我的问题。但是,现在我有另一个我无法解决的问题。
当我从终端调用 play 时一切正常,直到我再次开始输入。我的按键不显示!我在这篇文章中找到了一个解决方法(输入“重置”),所以我可以继续工作。
我的问题是为什么我的击键消失了,我能做些什么来解决它?如果需要其他信息,请告诉我。我使用的是 Mac OS X 版本 10.7.5。