@@ -151,20 +151,20 @@ usage: ${0} [h] [<p:> [vlRFfu:a:A:d:m:I:P:C:X]]
151151 ${0} -p <PID> -P 3658 -v
152152
153153
154- -C : Connect server only
154+ -C : connect server only
155155 No attach target JVM, just connect server with appoint IP:PORT only.
156156
157157 EXAMPLE:
158158 ${0} -C -I 192.168.0.1 -P 3658 -m debug
159159
160- -S : Shutdown server
160+ -S : shutdown server
161161 Shutdown jvm-sandbox\` server
162162
163- -n : Namespace
163+ -n : namespace
164164 Appoint the jvm-sandbox\` namespace
165165 when default, use \" ${DEFAULT_NAMESPACE} \"
166166
167- -d : Data
167+ -d : data
168168 Send the command & data to module's command handle method.
169169 <MODULE-ID>/<COMMAND-NAME>[?<PARAM1=VALUE1>[&PARAM2=VALUE2]]
170170
@@ -186,30 +186,23 @@ check_permission()
186186
187187 # touch attach token file
188188 touch ${SANDBOX_TOKEN_FILE} \
189- || exit_on_err 1 " permission denied, ${SANDBOX_TOKEN_FILE} is not readable"
189+ || exit_on_err 1 " permission denied, ${SANDBOX_TOKEN_FILE} is not readable. "
190190}
191191
192192# reset sandbox work environment
193193# reset some options for env
194194reset_for_env ()
195195{
196196
197- # if env define the JAVA_HOME, use it first
198- # if is alibaba opts, use alibaba ops's default JAVA_HOME
199- # [ -z ${JAVA_HOME} ] && JAVA_HOME=/opt/taobao/java
200- if [[ -z " ${JAVA_HOME} " ]]; then
201- JAVA_HOME=$( ps aux| grep ${TARGET_JVM_PID} | grep java| awk ' {print $11}' | xargs ls -l| awk ' {if($1~/^l/){print $11}else{print $9}}' | sed ' s/\/bin\/java//g' )
202- fi
197+ # use the target PID's java for SANDBOX_JAVA_BIN
198+ SANDBOX_JAVA_BIN=" $( ps aux| grep ${TARGET_JVM_PID} | grep java| awk ' {print $11}' ) "
199+ [[ ! -x " ${SANDBOX_JAVA_BIN} " ]] \
200+ && exit_on_err 1 " permission denied, ${SANDBOX_JAVA_BIN} is not executable."
203201
204-
205202 # check the jvm version, we need 1.6+
206- local JAVA_VERSION=$( " ${JAVA_HOME} " /bin/java -version 2>&1 | awk -F ' "' ' /version/&&$2>"1.5"{print $2}' )
207- [[ ! -x " ${JAVA_HOME} " || -z ${JAVA_VERSION} ]] \
208- && exit_on_err 1 " illegal ENV, please set \$ JAVA_HOME to JDK6+"
209-
210- # reset BOOT_CLASSPATH
211- [ -f " ${JAVA_HOME} " /lib/tools.jar ] \
212- && BOOT_CLASSPATH=-Xbootclasspath/a:" ${JAVA_HOME} " /lib/tools.jar
203+ local JAVA_VERSION=$( " ${SANDBOX_JAVA_BIN} " -version 2>&1 | awk -F ' "' ' /version/&&$2>"1.5"{print $2}' )
204+ [[ -z ${JAVA_VERSION} ]] \
205+ && exit_on_err 1 " illegal java version: ${JAVA_VERSION} , please make sure target java process: ${TARGET_JVM_PID} run int JDK[6,11]"
213206
214207}
215208
@@ -222,8 +215,7 @@ function attach_jvm() {
222215 local token=` date | head| cksum| sed ' s/ //g' `
223216
224217 # attach target jvm
225- " ${JAVA_HOME} " /bin/java \
226- " ${BOOT_CLASSPATH} " \
218+ " ${SANDBOX_JAVA_BIN} " \
227219 ${SANDBOX_JVM_OPS} \
228220 -jar ${SANDBOX_LIB_DIR} /sandbox-core.jar \
229221 ${TARGET_JVM_PID} \
0 commit comments