Last active
August 29, 2015 13:56
-
-
Save nttuyen/9303980 to your computer and use it in GitHub Desktop.
evn.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
ENV_DIR=~/.environments | |
ENV_HOME=$ENV_DIR | |
#Process JAVA with JDK | |
DEFAULT_JDK_VERSION=7 | |
DEFAULT_JDK_HOME=$ENV_DIR/jdk | |
function setup_jdk() { | |
#Process old version of jdk | |
OLD_JAVA_HOME=$JAVA_HOME | |
OLD_PATH=$PATH | |
#Process JDK version from input | |
JDK_VERSION=$1 | |
if [ "$JDK_VERSION" == "" ] ; then | |
JDK_VERSION=$DEFAULT_JDK_VERSION | |
fi | |
echo "Switch to jdk version $JDK_VERSION" | |
# Process JAVA_HOME directory | |
JAVA_HOME="$ENV_DIR/jdk$JDK_VERSION" | |
if [ ! -d "$JAVA_HOME" ] ; then | |
echo "JAVA_HOME directory is not exist: $JAVA_HOME" | |
echo "Use default JAVA_HOME directory: $DEFAULT_JDK_HOME" | |
JAVA_HOME=$DEFAULT_JDK_HOME | |
fi | |
if [ ! -d "$JAVA_HOME" ] ; then | |
echo "JAVA_HOME directory is not exist: $JAVA_HOME" | |
exit 0; | |
fi | |
if [ "$OLD_JAVA_HOME" != "" ] ; then | |
NEW_PATH="${PATH//$OLD_JAVA_HOME\/bin:/}" | |
export PATH=$NEW_PATH | |
fi | |
export JAVA_HOME | |
export PATH=$JAVA_HOME/bin:$PATH | |
echo "JAVA_HOME: $JAVA_HOME" | |
} | |
#call setup jdk | |
setup_jdk | |
alias jdk6='setup_jdk 6' | |
alias jdk7='setup_jdk 7' | |
alias jdk8='setup_jdk 8' | |
alias jdk9='setup_jdk 9' | |
alias jdk='setup_jdk' | |
#Process other environment param | |
ANDROID_HOME=$ENV_DIR/android-sdk | |
MAVEN_HOME=$ENV_DIR/maven | |
PLAY_FRAMEWORK_HOME=$ENV_DIR/playframework | |
export ENV_HOME ANDROID_HOME MAVEN_HOME PLAY_FRAMEWORK_HOME | |
#export PATH should be in the last | |
export PATH=$ENV_HOME/bin:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PLAY_FRAMEWORK_HOME:$PATH |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment