#!/usr/bin/env bash # vim:ts=4:sts=4:sw=4:et # # Author: Hari Sekhon # Date: 2017-08-24 15:40:04 +0200 (Thu, 24 Aug 2017) # # https://github.com/HariSekhon/DevOps-Bash-tools # # License: see accompanying Hari Sekhon LICENSE file # # If you're using my code you're welcome to connect with me on LinkedIn and optionally send me feedback to help steer this or other code I publish # # https://www.linkedin.com/in/HariSekhon # set -euo pipefail [ -n "${DEBUG:-}" ] && set -x SBT_VERSION="${SBT_VERSION:-1.3.10}" if [ -z "$JAVA_HOME" ]; then echo "\$JAVA_HOME not set!" exit 1 fi # unreliable that HOME is set, ensure shell evaluates to the right thing before we use it [ -n "${HOME:-}" ] || HOME=~ #JAR="$HOME/.sbt/sbt-launch-$SBT_VERSION.jar" bootdir="$HOME/.sbt/boot" mkdir -vp "$bootdir" if ! test -d "$bootdir/sbt-$SBT_VERSION"; then #URL="https://dl.bintray.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/$SBT_VERSION/sbt-launch.jar" #URL="https://dl.bintray.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/$SBT_VERSION/jars/sbt-launch.jar" URL=https://piccolo.link/sbt-1.3.3.tgz echo "Downloading sbt $SBT_VERSION from $URL" pushd "$bootdir" wget -O "sbt.tgz" "$URL" tar zxf "sbt.tgz" mv -- sbt "sbt-$SBT_VERSION" #mv sbt/bin/sbt-launcher.jar "$JAR" rm -f -- "sbt.tgz" popd fi # calling launcher manually is not necessary #exec "$JAVA_HOME/bin/java" \ # "${JVM_ARGS:-}" \ # -d64 \ # -noverify \ # -Dfile.encoding=UTF8 \ # -Dsbt.boot.directory="$HOME/.sbt/boot" \ # -Xmx1024M -Xss1M -XX:MaxPermSize=256m \ # -XX:+CMSClassUnloadingEnabled \ # -jar "$JAR" "$@" exec "$bootdir/sbt-$SBT_VERSION/bin/sbt" "$@"