Updated Branches: refs/heads/master ddae974d3 -> 6350308f6
BIGTOP-1137. provide a way to request a major version of JDK Project: http://git-wip-us.apache.org/repos/asf/bigtop/repo Commit: http://git-wip-us.apache.org/repos/asf/bigtop/commit/f4e26f0c Tree: http://git-wip-us.apache.org/repos/asf/bigtop/tree/f4e26f0c Diff: http://git-wip-us.apache.org/repos/asf/bigtop/diff/f4e26f0c Branch: refs/heads/master Commit: f4e26f0cfafc15c325db367fc69c0763cb5a13d0 Parents: ddae974 Author: Roman Shaposhnik <[email protected]> Authored: Fri Nov 1 16:47:00 2013 -0700 Committer: Roman Shaposhnik <[email protected]> Committed: Fri Nov 1 16:47:00 2013 -0700 ---------------------------------------------------------------------- .../common/bigtop-utils/bigtop-detect-javahome | 45 +++++++++++++++----- 1 file changed, 34 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/bigtop/blob/f4e26f0c/bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome ---------------------------------------------------------------------- diff --git a/bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome b/bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome index f33b36a..1d5608d 100644 --- a/bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome +++ b/bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome @@ -20,9 +20,7 @@ BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default} [ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/bigtop-utils ] && . ${BIGTOP_DEFAULTS_DIR}/bigtop-utils -# attempt to find java -if [ -z "$JAVA_HOME" ]; then - for candidate_regex in \ +JAVA6_HOME_CANDIDATES='\ /usr/lib/j2sdk1.6-sun \ /usr/lib/jvm/java-6-sun \ /usr/lib/jvm/java-1.6.0-sun-1.6.0.* \ @@ -30,22 +28,47 @@ if [ -z "$JAVA_HOME" ]; then /usr/lib/jvm/j2sdk1.6-oracle \ /usr/lib/jvm/j2sdk1.6-oracle/jre \ /usr/java/jdk1.6* \ - /usr/java/jre1.6* \ + /usr/java/jre1.6*' + +OPENJAVA6_HOME_CANDIDATES='\ + /usr/lib/jvm/java-1.6.0-openjdk \ + /usr/lib/jvm/java-1.6.0-openjdk-* \ + /usr/lib/jvm/jre-1.6.0-openjdk*' + +JAVA7_HOME_CANDIDATES='\ /usr/java/jdk1.7* \ /usr/java/jre1.7* \ /usr/lib/jvm/j2sdk1.7-oracle \ /usr/lib/jvm/j2sdk1.7-oracle/jre \ + /usr/lib/jvm/java-7-oracle*' + +OPENJAVA7_HOME_CANDIDATES='\ + /usr/lib/jvm/java-1.7.0-openjdk* \ + /usr/lib/jvm/java-7-openjdk*' + +MISCJAVA_HOME_CANDIDATES='\ /Library/Java/Home \ /usr/java/default \ /usr/lib/jvm/default-java \ /usr/lib/jvm/java-openjdk \ - /usr/lib/jvm/jre-openjdk \ - /usr/lib/jvm/java-1.7.0-openjdk* \ - /usr/lib/jvm/java-7-openjdk* \ - /usr/lib/jvm/java-7-oracle* \ - /usr/lib/jvm/java-1.6.0-openjdk \ - /usr/lib/jvm/java-1.6.0-openjdk-* \ - /usr/lib/jvm/jre-1.6.0-openjdk* ; do + /usr/lib/jvm/jre-openjdk' + +case $BIGTOP_JAVA_MAJOR in + 6) JAVA_HOME_CANDIDATES="$JAVA6_HOME_CANDIDATES" + ;; + 7) JAVA_HOME_CANDIDATES="$JAVA7_HOME_CANDIDATES $OPENJAVA7_HOME_CANDIDATES" + ;; + *) JAVA_HOME_CANDIDATES="$JAVA6_HOME_CANDIDATES \ + $JAVA7_HOME_CANDIDATES \ + $MISCJAVA_HOME_CANDIDATES \ + $OPENJAVA7_HOME_CANDIDATES \ + $OPENJAVA6_HOME_CANDIDATES" + ;; +esac + +# attempt to find java +if [ -z "$JAVA_HOME" ]; then + for candidate_regex in $JAVA_HOME_CANDIDATES ; do for candidate in `ls -rd $candidate_regex 2>/dev/null`; do if [ -e $candidate/bin/java ]; then export JAVA_HOME=$candidate
