Add a script to download sbt if not present on the system
This commit is contained in:
parent
d43ad3ef2c
commit
9e9a913c2f
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -4,6 +4,7 @@
|
|||
*.iml
|
||||
*.iws
|
||||
.idea/
|
||||
.sbtlib/*.jar
|
||||
.settings
|
||||
.cache
|
||||
/build/
|
||||
|
|
|
@ -15,4 +15,6 @@
|
|||
# limitations under the License.
|
||||
#
|
||||
|
||||
# Note: If you change the sbt version please also change the sbt download
|
||||
# script in the root directory of the project called sbt.
|
||||
sbt.version=0.12.4
|
||||
|
|
48
sbt
Executable file
48
sbt
Executable file
|
@ -0,0 +1,48 @@
|
|||
#!/bin/bash
|
||||
# This script launches sbt for this project. If present it uses the system
|
||||
# version of sbt. If there is no system version of sbt it attempts to download
|
||||
# sbt locally.
|
||||
SBT_VERSION=0.12.4
|
||||
URL1=http://typesafe.artifactoryonline.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/${SBT_VERSION}/sbt-launch.jar
|
||||
URL2=http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/${SBT_VERSION}/sbt-launch.jar
|
||||
JAR=.sbtlib/sbt-launch-${SBT_VERSION}.jar
|
||||
|
||||
printf "Checking for system sbt ["
|
||||
if hash sbt 2>/dev/null; then
|
||||
printf "FOUND]\n"
|
||||
# Use System SBT
|
||||
sbt
|
||||
else
|
||||
printf "NOT FOUND]\n"
|
||||
# Download sbt or use allready downloaded
|
||||
if [ ! -d .sbtlib ]; then
|
||||
mkdir .sbtlib
|
||||
fi
|
||||
if [ ! -f ${JAR} ]; then
|
||||
# Download
|
||||
printf "Attempting to fetch sbt\n"
|
||||
if hash curl 2>/dev/null; then
|
||||
curl --progress-bar ${URL1} > ${JAR} || curl --progress-bar ${URL2} > ${JAR}
|
||||
elif hash wget 2>/dev/null; then
|
||||
wget --progress=bar ${URL1} -O ${JAR} || wget --progress=bar ${URL2} -O ${JAR}
|
||||
else
|
||||
printf "You do not have curl or wget installed, please install sbt manually from http://www.scala-sbt.org/\n"
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
if [ ! -f ${JAR} ]; then
|
||||
# We failed to download
|
||||
printf "Our attempt to download sbt locally to {$JAR} failed. Please install sbt manually from http://www.scala-sbt.org/\n"
|
||||
exit
|
||||
fi
|
||||
printf "Launching sbt from .sbtlib\n"
|
||||
java \
|
||||
-Duser.timezone=UTC \
|
||||
-Djava.awt.headless=true \
|
||||
-Dfile.encoding=UTF-8 \
|
||||
-XX:MaxPermSize=256m \
|
||||
-Xmx1g \
|
||||
-noverify \
|
||||
-jar ${JAR} \
|
||||
"$@"
|
||||
fi
|
Loading…
Reference in a new issue