#!/bin/bash
#rd_fuxiong_pan
#设置初始参数,最好全部用引号包含,避免出现特殊字符串导致的断片
:<<!
lib目录结构说明：
lib目录下存放不同的jar及加载顺序
bos：存放bos的jar
biz：业务的jar
cus：二开的jar
trd：第三方jar
因lib目录下有可能会变动，且有顺序，无法直接遍历或者写死，
此处通过在环境变量中写入APPLIBS=bos,biz,cus,trd来表示
!
#脚本只要发生错误，就终止执行
set -e
#在运行结果之前，先输出执行的那一行命令
set -x

#如果APPLIBS为空，则直接异常退出
if [ ! $APPLIBS ]; then
    echo "ERROR:: 必须在环境变量中设置APPLIBS,用于从lib目录下组合classpath，如：APPLIBS=bos,biz,cus,trd"
    echo "ERROR:: must be set APPLIBS in env for classpath，like APPLIBS=bos,biz,cus,trd!!!"
    echo "ERROR:: jvm init error, exit!!"
    exit 1
fi

appstrs=$APPLIBS
array=(${appstrs//,/ })  
classpathconf="../conf"
classpathstr=""
cd ../lib
for libdir in ${array[@]}
do
  cd ./$libdir
  JARS=`ls |grep .jar|awk '{print "../lib/'$libdir'/"$0}'|tr "\n" ":"`
  classpathstr=${classpathstr}""${JARS}
  cd ..
done
classpathstr="../conf:"${classpathstr}
cd ../bin
export KD_CLASSPATH=$classpathstr
echo $KD_CLASSPATH > classpath
