mirror of
https://github.com/alibaba/arthas.git
synced 2026-10-21 04:03:11 +00:00
Refine as.sh script.
This commit is contained in:
@@ -246,6 +246,23 @@ reset_for_env()
|
||||
exit_on_err 1 "Can not find JAVA_HOME, please set \$JAVA_HOME bash env first."
|
||||
fi
|
||||
|
||||
# when java version less than 9, we can use tools.jar to confirm java home.
|
||||
# when java version greater than 9, there is no tools.jar.
|
||||
if [[ "$JAVA_VERSION" -lt 9 ]];then
|
||||
# possible java homes
|
||||
javaHomes=("${JAVA_HOME%%/}" "${JAVA_HOME%%/}/.." "${JAVA_HOME%%/}/../..")
|
||||
for javaHome in ${javaHomes[@]}
|
||||
do
|
||||
toolsJar="$javaHome/lib/tools.jar"
|
||||
if [ -f $toolsJar ]; then
|
||||
JAVA_HOME=$( rreadlink $javaHome )
|
||||
BOOT_CLASSPATH=-Xbootclasspath/a:$( rreadlink $toolsJar )
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ -z "${BOOT_CLASSPATH}" ] && exit_on_err 1 "tools.jar was not found, so arthas could not be launched!"
|
||||
fi
|
||||
|
||||
echo "[INFO] JAVA_HOME: ${JAVA_HOME}"
|
||||
|
||||
# maybe 1.8.0_162 , 11-ea
|
||||
@@ -268,16 +285,6 @@ reset_for_env()
|
||||
fi
|
||||
done
|
||||
|
||||
# when java version greater than 9, there is no tools.jar
|
||||
if [[ "$JAVA_VERSION" -lt 9 ]];then
|
||||
# check tools.jar exists
|
||||
if [ ! -f "${JAVA_HOME}/lib/tools.jar" ]; then
|
||||
exit_on_err 1 "${JAVA_HOME}/lib/tools.jar does not exist, arthas could not be launched!"
|
||||
else
|
||||
BOOT_CLASSPATH=-Xbootclasspath/a:${JAVA_HOME}/lib/tools.jar
|
||||
fi
|
||||
fi
|
||||
|
||||
# reset CHARSET for alibaba opts, we use GBK
|
||||
[[ -x /opt/taobao/java ]] && JVM_OPTS="-Dinput.encoding=GBK ${JVM_OPTS} "
|
||||
|
||||
@@ -422,7 +429,7 @@ WIKI:
|
||||
Here is the list of possible java process(es) to attatch:
|
||||
"
|
||||
|
||||
$(call_jps) | grep -v sun.tools.jps.Jps
|
||||
call_jps | grep -v sun.tools.jps.Jps
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user